fix: install Docker CLI and mount socket for instance management

- Install docker-ce-cli and docker-compose-plugin in API Dockerfile
- Mount /var/run/docker.sock into API container
- Add appuser to docker group for socket permissions
- Fixes FileNotFoundError when deleting instances
This commit is contained in:
Fusion
2026-05-20 11:32:58 +02:00
parent e3ef852eca
commit 9d27cd9fe8
2 changed files with 16 additions and 3 deletions
+15 -3
View File
@@ -16,16 +16,28 @@ RUN pip install --no-cache-dir --user -e ".[dev]"
# Production stage
FROM python:3.11-slim
# Create non-root user
RUN groupadd -r appgroup && useradd -r -g appgroup appuser
# Create non-root user and add to docker group
RUN groupadd -r appgroup && useradd -r -g appgroup appuser \
&& groupadd -r docker || true \
&& usermod -aG docker appuser
WORKDIR /app
# Install runtime dependencies
# Install runtime dependencies including Docker CLI
RUN apt-get update && apt-get install -y --no-install-recommends \
libpq5 \
git \
netcat-openbsd \
ca-certificates \
curl \
gnupg \
&& install -m 0755 -d /etc/apt/keyrings \
&& curl -fsSL https://download.docker.com/linux/debian/gpg | gpg --dearmor -o /etc/apt/keyrings/docker.gpg \
&& chmod a+r /etc/apt/keyrings/docker.gpg \
&& echo "deb [arch="$(dpkg --print-architecture)" signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/debian \
"$(. /etc/os-release && echo "$VERSION_CODENAME")" stable" > /etc/apt/sources.list.d/docker.list \
&& apt-get update \
&& apt-get install -y --no-install-recommends docker-ce-cli docker-compose-plugin \
&& rm -rf /var/lib/apt/lists/*
# Copy dependencies from builder
+1
View File
@@ -95,6 +95,7 @@ services:
- repo_data:/data/repos
- instance_data:/data/instances
- avatar_uploads:/app/uploads
- /var/run/docker.sock:/var/run/docker.sock
depends_on:
postgres:
condition: service_healthy