taskflow-api / Dockerfile
suhail
dockerfile
44da760
raw
history blame
2.4 kB
# # Use Python 3.11 slim image
# FROM python:3.11-slim
# # Set working directory
# WORKDIR /app
# # Install system dependencies
# RUN apt-get update && apt-get install -y \
# gcc \
# postgresql-client \
# && rm -rf /var/lib/apt/lists/*
# # Copy requirements first for better caching
# COPY requirements.txt .
# # Install Python dependencies
# RUN pip install --no-cache-dir -r requirements.txt
# # Copy application code
# COPY . .
# # Expose port 7860 (Hugging Face Spaces default)
# EXPOSE 7860
# # Run database migrations and start the application
# CMD alembic upgrade head && uvicorn src.main:app --host 0.0.0.0 --port 7860
# # =========================
# # Base Image
# # =========================
# FROM python:3.11-slim
# # Set working directory
# WORKDIR /app
# # =========================
# # Install system dependencies
# # =========================
# RUN apt-get update && apt-get install -y \
# gcc \
# libpq-dev \
# postgresql-client \
# && rm -rf /var/lib/apt/lists/*
# # =========================
# # Copy requirements first (cache optimization)
# # =========================
# COPY requirements.txt .
# # Upgrade pip and install Python dependencies
# RUN pip install --upgrade pip
# RUN pip install --no-cache-dir -r requirements.txt
# # =========================
# # Copy app source code
# # =========================
# COPY src/ ./src
# # Copy alembic config
# COPY alembic.ini .
# # =========================
# # Copy specs folder to match expected absolute path
# # =========================
# COPY specs/ /specs/
# # =========================
# # Expose port (for FastAPI / Hugging Face Spaces)
# # =========================
# EXPOSE 7860
# # =========================
# # Run migrations and start app
# # =========================
# CMD alembic upgrade head && uvicorn src.main:app --host 0.0.0.0 --port 7860
# ////////////////////
FROM python:3.11-slim
WORKDIR /app
RUN apt-get update && apt-get install -y \
gcc \
libpq-dev \
postgresql-client \
&& rm -rf /var/lib/apt/lists/*
COPY requirements.txt .
RUN pip install --upgrade pip
RUN pip install --no-cache-dir -r requirements.txt
# Copy source
COPY src/ ./src
# ✅ FIXED: Alembic is inside src
COPY src/alembic/ ./alembic/
COPY alembic.ini .
COPY specs/ /specs/
EXPOSE 7860
CMD alembic upgrade head && uvicorn src.main:app --host 0.0.0.0 --port 7860