gpt4 book ai didi

django - Django和Docker:管理生产和开发环境之间的依赖关系

转载 作者:行者123 更新时间:2023-12-02 19:11:17 25 4
gpt4 key购买 nike

我正在从使用虚拟机切换到docker。我从开发环境开始。

我习惯于将设置文件分为base.pydev.pyprod.pyprod.py有一些我在开发过程中不需要的应用程序,例如newrelic /错误跟踪器和DEBUG=False

您如何使用docker进行管理?您使用不同的设置构建多个图像?还是有更好的解决方案来解决这个问题?

这是我使用的docker-compose.yml文件:

version: '2'
services:
db:
image: postgres
environment:
POSTGRES_USER: 'user'
POSTGRES_PASSWORD: 'pass'
POSTGRES_DB: 'name'
web:
build: ./project
image: project
command: /usr/local/bin/gunicorn project.wsgi:application -w 2 -b :8000 --reload
ports:
- "8000:8000"
depends_on:
- db

最佳答案

您可以利用docker compose的variable substitution功能,通过主机上的环境变量控制应用程序的所有行为。例如,可以将POSTGRES_USER和POSTGRES_PASSWORD定义为开发机中和部署机中具有不同值的环境变量。
您还可以定义两个不同的构建镜像,并根据环境变量使用每个镜像

build: ./project-${HOST}

project-dev中有一个具有dev依赖项的Dockerfile,在 project-deploy中有另一个Dockerfile。

关于django - Django和Docker:管理生产和开发环境之间的依赖关系,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36896542/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com