dotfiles/vscode/.vscode/extensions/ms-azuretools.vscode-docker-1.29.1/resources/templates/python/Dockerfile.template
2024-08-02 10:42:24 -06:00

39 lines
1.3 KiB
Docker

# For more information, please refer to https://aka.ms/vscode-docker-python
FROM python:3-slim
{{#if (isRootPort ports)}}
# Warning: A port below 1024 has been exposed. This requires the image to run as a root user which is not a best practice.
# For more information, please refer to https://aka.ms/vscode-docker-python-user-rights`
{{/if}}
{{#if ports}}
{{#each ports}}
EXPOSE {{ . }}
{{/each}}
{{/if}}
# Keeps Python from generating .pyc files in the container
ENV PYTHONDONTWRITEBYTECODE=1
# Turns off buffering for easier container logging
ENV PYTHONUNBUFFERED=1
# Install pip requirements
COPY requirements.txt .
RUN python -m pip install -r requirements.txt
WORKDIR /app
COPY . /app
{{#unless (isRootPort ports)}}
# Creates a non-root user with an explicit UID and adds permission to access the /app folder
# For more info, please refer to https://aka.ms/vscode-docker-python-configure-containers
RUN adduser -u 5678 --disabled-password --gecos "" appuser && chown -R appuser /app
USER appuser
{{/unless}}
# During debugging, this entry point will be overridden. For more information, please refer to https://aka.ms/vscode-docker-python-debug
{{#if wsgiComment}}
{{{ wsgiComment }}}
{{/if}}
CMD {{{ toQuotedArray pythonCmdParts }}}