【发布时间】:2021-12-25 01:27:38
【问题描述】:
在 docker (1.29) 中运行 gunicorn 命令之前,我很难设置环境变量。我的 docker-compose 文件包含我的 Django/Python 启动,如下所示...
web:
restart: always
build: ./web
ports: # to access the container from outside
- "8000:8000"
env_file: .env
environment:
DEBUG: 'true'
SERVICE_CREDS_JSON_FILE: '/my-app/credentials.json'
command: PYTHONPATH=`pwd`/..
/usr/local/bin/gunicorn directory.wsgi:application --reload -w 2 -b :8000
我的 web/Dockerfile 看起来像这样
FROM python:3.9-slim
RUN apt-get update && apt-get install
RUN apt-get install -y dos2unix
RUN apt-get update \
&& apt-get install -y --no-install-recommends gcc g++ libgdal-dev libffi-dev \
&& rm -rf /var/lib/apt/lists/*
RUN python -m pip install --upgrade pip
WORKDIR /my-app/
COPY . /my-app
RUN python -m pip install -r requirements.txt
RUN dos2unix /my-app/entrypoint.sh
ENTRYPOINT ["bash", "/my-app/entrypoint.sh"]
但是,当我跑步时
docker-compose up
我收到此错误
/my-app/entrypoint.sh: line 9: /app/PYTHONPATH=`pwd`/..: No such file or directory
maps_web_1 exited with code 127
如何正确设置环境变量以及运行我的 gunicorn 命令?
【问题讨论】:
-
我试图给你一个答案,但你能添加你想要的编译运行时进程命令吗?
标签: docker docker-compose environment-variables gunicorn