【发布时间】:2019-03-06 07:36:34
【问题描述】:
我在 docker 上开发 django 时遇到了困难。当我对代码进行任何更改时,我需要重新启动整个容器才能使更改生效。
我在本地安装了一个文件系统,并且在本地进行了更改。但即使我直接在容器中进行更改,进行迁移或touch 受影响或 wsgi 文件,更改也不会生效。
这是撰写文件中的图像
backend:
container_name: 'backend'
image: dronetag/alpha-docker/backend
build: ./images/backend/
command: >
sh -c "
python manage.py collectstatic --no-input;
python manage.py migrate;
gunicorn backend.wsgi -b 0.0.0.0:80;"
ports:
- "10080:80"
- "10443:443"
volumes:
- ./src/backend:/src
depends_on:
- postgres
links:
- redis
- postgres
Dockerfile
FROM python:3.6
ENV PYTHONUNBUFFERED 1
ENV C_FORCE_ROOT true
RUN mkdir /src
WORKDIR /src
COPY requirements.txt .
RUN pip install -r requirements.txt
【问题讨论】:
-
除非您使用内置的开发服务器,否则 Django 不会自动刷新。它不像 PHP 在运行时被解释,看看这个,看看你是否可以使用这个设置docs.gunicorn.org/en/latest/settings.html#reload