FROM python:3.11-slim WORKDIR /app # Prevent Python from writing pyc files and keep stdout unbuffered ENV PYTHONDONTWRITEBYTECODE=1 ENV PYTHONUNBUFFERED=1 COPY requirements.txt . RUN pip install --no-cache-dir -r requirements.txt # Copy the rest of the application COPY . . # Expose port EXPOSE 8000 # Create data directory for SQLite if it doesn't exist RUN mkdir -p /app/data # Run seed data on startup, then start uvicorn CMD ["sh", "-c", "python -m app.seed && uvicorn app.main:app --host 0.0.0.0 --port 8000"]