【发布时间】:2019-04-03 02:40:49
【问题描述】:
我是 django 和 docker 的开发新手,我在更改项目中的文件时遇到问题。我的问题如下:
我更改了 django 项目(模板、视图、url)中任何文件的内容,但它在我当前运行的应用程序中没有更新。我总是想看到我需要重新启动服务器(我正在使用nginx)做docker-compose up 的更改。
是否有我应该安装/执行的软件包或更改以使其能够接受运行时间的更改?
这是我的Dockerfile:
FROM python:3.6
ENV PYTHONUNBUFFERED 1
RUN mkdir -p /opt/services/djangoapp/src
COPY Pipfile Pipfile.lock /opt/services/djangoapp/src/
WORKDIR /opt/services/djangoapp/src
RUN pip install pipenv && pipenv install --system
RUN pip install pipenv && pipenv install --system
RUN pip install django-livereload
COPY . /opt/services/djangoapp/src
RUN cd hello && python manage.py collectstatic --no-input
EXPOSE 8000
CMD ["gunicorn", "-c", "config/gunicorn/conf.py", "--bind", ":8000", "--chdir", "hello", "hello.wsgi:application"]
让我知道我可能提供的任何其他信息,以便更好地了解问题(如果不够清楚)。
version: '3'
services:
# database containers, one for each db
database1:
image: postgres:10
volumes:
- database1_volume:/var/lib/postgresql/data
env_file:
- config/db/database1_env
networks:
- database1_network
# web container, with django + gunicorn
djangoapp:
build: .
environment:
- DJANGO_SETTINGS_MODULE
volumes:
- .:/opt/services/djangoapp/src
- static:/opt/services/djangoapp/static
- media:/opt/services/djangoapp/media
- .:/code
networks:
- database1_network
- nginx_network
depends_on:
- database1
# reverse proxy container (nginx)
nginx:
image: nginx:1.13
ports:
- 8000:80
volumes:
- ./config/nginx/conf.d:/etc/nginx/conf.d
- static:/opt/services/djangoapp/static
- media:/opt/services/djangoapp/media
networks:
- nginx_network
depends_on:
- djangoapp
networks:
database1_network:
driver: bridge
database2_network:
driver: bridge
nginx_network:
driver: bridge
volumes:
database1_volume:
static:
media:
【问题讨论】:
-
显示你的 docker-compose 文件
-
我刚刚用我的 docker-compose 文件更新了我的问题
-
安装卷后仍然无法正常工作?