diff --git a/install.sh b/install.sh index db2ecb6..a087739 100755 --- a/install.sh +++ b/install.sh @@ -155,9 +155,9 @@ fi # Use sudo for docker commands if the current shell can't run docker directly if docker info &>/dev/null 2>&1; then - DOCKER_CMD="docker" + docker_cmd() { docker "$@"; } else - DOCKER_CMD="sg docker -c docker" + docker_cmd() { sudo docker "$@"; } fi # ── Clone / Pull ───────────────────────────────── @@ -193,22 +193,22 @@ log "Data directory ready" # ── Build & Start ──────────────────────────────── info "Building Docker image (this may take a few minutes)..." -$DOCKER_CMD compose build web +docker_cmd compose build web log "Build complete" info "Starting containers..." -$DOCKER_CMD compose up -d +docker_cmd compose up -d log "Containers are running" # ── Wait for health ────────────────────────────── info "Waiting for web service to be healthy..." for i in $(seq 1 30); do - if $DOCKER_CMD compose exec -T web wget --no-verbose --tries=1 --spider http://127.0.0.1:3000/api/health &>/dev/null; then + if docker_cmd compose exec -T web wget --no-verbose --tries=1 --spider http://127.0.0.1:3000/api/health &>/dev/null; then log "Web service is healthy" break fi if [ "$i" -eq 30 ]; then - warn "Timed out waiting for health check — check logs with: $DOCKER_CMD compose logs web" + warn "Timed out waiting for health check — check logs with: docker compose logs web" fi sleep 2 done