Spaces:
Build error
Build error
FROM python:3.9-slim AS builder | |
WORKDIR /app | |
COPY ./pyproject.toml . | |
COPY ./poetry.lock . | |
# Install build dependencies | |
RUN apt-get update \ | |
&& apt-get install -y --no-install-recommends build-essential \ | |
&& pip install --upgrade pip poetry \ | |
&& poetry config virtualenvs.create false \ | |
&& poetry install --no-interaction --no-ansi | |
FROM python:3.9-slim | |
WORKDIR /app | |
# Install runtime dependencies | |
RUN apt-get update \ | |
&& apt-get install -y --no-install-recommends libpq5 redis-server \ | |
&& apt-get clean \ | |
&& rm -rf /var/lib/apt/lists/* | |
# Install PostgreSQL client | |
RUN apt-get update \ | |
&& apt-get install -y --no-install-recommends postgresql-client \ | |
&& apt-get clean \ | |
&& rm -rf /var/lib/apt/lists/* | |
# Copy the built virtual environment from the builder stage | |
COPY --from=builder /usr/local /usr/local | |
# Copy the rest of the backend files to the container | |
COPY ./ . | |
# Expose the backend port (change this if your FastAPI app uses a different port) | |
EXPOSE 7860 | |
# Start Redis server, PostgreSQL server, and the FastAPI app using Uvicorn | |
CMD ["bash", "-c", "service postgresql start && redis-server --daemonize yes && uvicorn app:app --host 0.0.0.0 --port 7860"] | |