diff --git a/basic-instalations.sh b/basic-instalations.sh old mode 100644 new mode 100755 index 59d966a..e8c4185 --- a/basic-instalations.sh +++ b/basic-instalations.sh @@ -5,42 +5,71 @@ set -e echo "🛠️ Detecting OS..." OS=$(uname -s) +is_wsl() { + grep -qi microsoft /proc/version 2>/dev/null +} + install_docker_linux() { echo "🔧 Installing Docker on Linux..." # Remove old versions sudo apt-get remove -y docker docker-engine docker.io containerd runc || true - # Install dependencies + # Install required tools + echo "📦 Installing dependencies..." sudo apt-get update sudo apt-get install -y \ ca-certificates \ curl \ gnupg \ - lsb-release + lsb-release \ + apt-transport-https - # Add Docker's official GPG key - sudo install -m 0755 -d /etc/apt/keyrings - curl -fsSL https://download.docker.com/linux/$(. /etc/os-release && echo "$ID")/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg + # Ensure folders exist + sudo mkdir -p /etc/apt/keyrings /etc/apt/sources.list.d + + # Add Docker GPG key + echo "🔑 Adding Docker GPG key..." + curl -fsSL https://download.docker.com/linux/$(. /etc/os-release && echo "$ID")/gpg | \ + sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg sudo chmod a+r /etc/apt/keyrings/docker.gpg - # Add Docker's repo + # Add Docker repository + echo "📄 Adding Docker repository..." echo \ - "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/$(. /etc/os-release && echo "$ID") \ - $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null + "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] \ + https://download.docker.com/linux/$(. /etc/os-release && echo "$ID") \ + $(lsb_release -cs) stable" | \ + sudo tee /etc/apt/sources.list.d/docker.list > /dev/null - # Install Docker and Compose + # Install Docker + echo "📦 Installing Docker Engine & Compose..." sudo apt-get update - sudo apt-get install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin + sudo apt-get install -y \ + docker-ce \ + docker-ce-cli \ + containerd.io \ + docker-buildx-plugin \ + docker-compose-plugin - # Enable and start Docker - sudo systemctl enable docker - sudo systemctl start docker + if ! is_wsl; then + echo "🔄 Enabling and starting Docker service..." + sudo systemctl enable docker + sudo systemctl start docker + else + echo "⚠️ Skipping systemctl steps (running in WSL)" + fi - # Add user to docker group + echo "👥 Adding user '$USER' to docker group..." sudo usermod -aG docker "$USER" - echo "✅ Docker installed. Please log out and log back in for docker group to take effect." + echo "✅ Docker installed successfully!" + echo "" + if is_wsl; then + echo "🔁 Please restart your WSL session: run 'wsl --shutdown' in PowerShell or close your terminal." + else + echo "🔁 Please log out and log back in for the docker group to take effect." + fi } install_docker_windows_message() { diff --git a/docker-compose.yaml b/docker-compose.yaml index 2f60d50..ad68366 100644 --- a/docker-compose.yaml +++ b/docker-compose.yaml @@ -239,8 +239,6 @@ services: depends_on: postgres: condition: service_healthy - phoenix-redis: - condition: service_healthy healthcheck: test: ["CMD-SHELL", "curl -s http://phoenix-system:3000/health | grep -q '\"admin-api\":{\"status\":\"up\"}' && curl -s http://phoenix-system:3000/health | grep -q '\"database\":{\"status\":\"up\"}'"] # Checks both admin-api and database status interval: 10s # Time between each health check @@ -338,14 +336,6 @@ services: # reservations: # Guaranteed minimum resources for the container # cpus: "0.05" # Reserved CPU cores (5% of one core) # memory: 32M # Reserved memory (32 megabytes) - healthcheck: - test: [ - "CMD-SHELL", - "redis-cli --no-auth-warning -a ${REDIS_PASSWORD} ping | grep PONG && test -w /bitnami/redis/data" - ] - interval: 5s - retries: 10 - timeout: 5s depends_on: postgres: condition: service_healthy