# Use the official Python image from the Docker Hub | |
FROM python:3.10-slim | |
# Set the working directory in the container | |
WORKDIR /app | |
# Install git and git-lfs | |
RUN apt-get update \ | |
&& apt-get install -y git git-lfs libsndfile1 \ | |
&& apt-get clean \ | |
&& rm -rf /var/lib/apt/lists/* \ | |
&& git lfs install | |
# Copy the requirements file into the container | |
COPY requirements.txt . | |
# Install the required packages | |
RUN pip install --no-cache-dir -r requirements.txt \ | |
# Install gruut[sw] separately | |
&& pip install -f 'https://synesthesiam.github.io/prebuilt-apps/' 'gruut[sw]' | |
# Copy the rest of the application code into the container | |
COPY . . | |
# Expose the port the app runs on | |
EXPOSE 8080 | |
# Run the application | |
CMD ["gunicorn", "--bind", "0.0.0.0:8080", "server:app"] |