# Use the official Python image from the Docker Hub FROM python:3.9-slim # Set the working directory in the container WORKDIR /app # Copy the requirements file into the container COPY requirements.txt . # Install the dependencies RUN pip install --no-cache-dir -r requirements.txt # Install gunicorn RUN pip install gunicorn # Copy the FastAPI project files into the container COPY . . # Copy the czkawka binary into the container COPY vendor/czkawka /bin/ # Install ffmpeg with ffprobe RUN apt-get update && apt-get install -y ffmpeg # Expose the port the app runs on EXPOSE 8000 # Command to run the FastAPI app using gunicorn with uvicorn workers CMD ["gunicorn", "-w", "4", "-k", "uvicorn.workers.UvicornWorker", "main:app", "--bind", "0.0.0.0:8000"]