FROM python:3.11-slim WORKDIR /app COPY backend/requirements.txt . RUN pip install --no-cache-dir -r requirements.txt COPY backend/main.py . COPY static ./static # Data directories inside the container (bind-mounted/volumed at runtime, # but created here so the app also works without an explicit mount). RUN mkdir -p /data/projects /data/settings ENV PROJECTS_DIR=/data/projects EXPOSE 8080 CMD ["uvicorn", "main:app", "--host", "0.0.0.0", "--port", "8080"]