django - 使用 docker 进行本地开发——我需要 2 个 Dockerfiles 吗?

标签 django docker dockerfile

第一次尝试对 django 项目进行 docker 化,我知道对于生产,我的 Dockerfile 应该有 ADD 将 django 项目复制到容器中。

但是对于本地开发,我需要对代码的每一次更改都立即生效,因为我读到建议在运行 docker ( docker run -v path:path ) 时挂载一个卷,但这是否意味着我需要用于本地开发的不同 Dockerfile?一个不运行 ADD 命令的?

最佳答案

不,您可能不需要两个文件。您可以在卷中的 ADD 命令中使用相同的文件夹。

从官方 docker 页面查看这个 django 教程:

https://docs.docker.com/compose/django/

Dockerfile

FROM python:2.7
ENV PYTHONUNBUFFERED 1
RUN mkdir /code
WORKDIR /code
ADD requirements.txt /code/
RUN pip install -r requirements.txt
ADD . /code/

撰写文件

version: '2'
services:
  db:
    image: postgres
  web:
    build: .
    command: python manage.py runserver 0.0.0.0:8000
    volumes:
      - .:/code
    ports:
      - "8000:8000"
    depends_on:
      - db

关于django - 使用 docker 进行本地开发——我需要 2 个 Dockerfiles 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38519619/

相关文章:

python - django_address 模块是否提供了一种播种初始国家数据的方法?

Django gwt 和 rpc 调用

django - 如何在 django 中显示所有 session 变量?

docker - 以 root 身份在生产中运行 docker 容器是否安全?

使用 Docker Jenkins 容器管道构建 Docker 镜像时未找到 Docker

python - Tastypie - 找不到嵌套资源字段

python - 为 Python 项目构建 Dockerfile 时出错

docker - 如何更改 "docker create volume"命令的默认位置?

java - 如何将 JAVA_OPTS 传递给 docker 容器中的 tomcat?

docker - 错误 : Service 'ubuntu' failed to build: The command '/bin/sh -c apt-get update