Created
June 25, 2021 19:56
-
-
Save arturokunder/89f0f612bdf6b18bd8a4a6e2b262ea97 to your computer and use it in GitHub Desktop.
Python Dockerfile
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Use the official lightweight Python image. | |
# https://hub.docker.com/_/python | |
FROM python:3.8-slim-buster | |
# Copy local code to the container image. | |
ENV APP_HOME /app | |
ENV PYTHONUNBUFFERED True | |
WORKDIR $APP_HOME | |
# Install Python dependencies and Gunicorn | |
ADD requirements.txt . | |
RUN pip install --no-cache-dir -r requirements.txt && pip install --no-cache-dir gunicorn | |
RUN groupadd -r app && useradd -r -g app app | |
# Copy the rest of the codebase into the image | |
COPY --chown=app:app . ./ | |
USER app | |
# Run the web service on container startup. Here we use the gunicorn | |
# webserver, with one worker process and 8 threads. | |
# For environments with multiple CPU cores, increase the number of workers | |
# to be equal to the cores available in Cloud Run. | |
CMD exec gunicorn --bind :$PORT --log-level info --workers 1 --threads 8 --timeout 0 app:server |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
add wrap