diff options
author | Ryan Jordan <ryjordan@gmail.com> | 2023-08-24 03:42:05 +0200 |
---|---|---|
committer | Ryan Jordan <ryjordan@gmail.com> | 2023-08-24 03:42:05 +0200 |
commit | f300aebf8c0b579d62c6df2960fad1947b58b417 (patch) | |
tree | db2b00f6bdc65d2b8b8dfe7986dd08357de936fe /Dockerfile | |
parent | ~ | Merge pull request #829 (diff) | |
download | gpt4free-f300aebf8c0b579d62c6df2960fad1947b58b417.tar gpt4free-f300aebf8c0b579d62c6df2960fad1947b58b417.tar.gz gpt4free-f300aebf8c0b579d62c6df2960fad1947b58b417.tar.bz2 gpt4free-f300aebf8c0b579d62c6df2960fad1947b58b417.tar.lz gpt4free-f300aebf8c0b579d62c6df2960fad1947b58b417.tar.xz gpt4free-f300aebf8c0b579d62c6df2960fad1947b58b417.tar.zst gpt4free-f300aebf8c0b579d62c6df2960fad1947b58b417.zip |
Diffstat (limited to 'Dockerfile')
-rw-r--r-- | Dockerfile | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 00000000..36ca12f1 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,33 @@ +# Use the official lightweight Python image. +# https://hub.docker.com/_/python +FROM python:3.9-slim + +# Ensure Python outputs everything immediately (useful for real-time logging in Docker). +ENV PYTHONUNBUFFERED 1 + +# Set the working directory in the container. +WORKDIR /app + +# Update the system packages and install system-level dependencies required for compilation. +# gcc: Compiler required for some Python packages. +# build-essential: Contains necessary tools and libraries for building software. +RUN apt-get update && apt-get install -y --no-install-recommends \ + gcc \ + build-essential \ + && rm -rf /var/lib/apt/lists/* + +# Copy the project's requirements file into the container. +COPY requirements.txt /app/ + +# Upgrade pip for the latest features and install the project's Python dependencies. +RUN pip install --upgrade pip && pip install -r requirements.txt + +# Copy the entire project into the container. +# This may include all code, assets, and configuration files required to run the application. +COPY . /app/ + +# Install additional requirements specific to the interference module/package. +RUN pip install -r interference/requirements.txt + +# Define the default command to run the app using Python's module mode. +CMD ["python", "-m", "interference.app"] |