You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在同一服务器运行两个不同的django-cookie-cutter Docker项目

同一服务器运行两个Cookiecutter-Django Docker项目的端口配置方案

1. 修改项目环境变量文件

针对每个项目,分别修改根目录下的.env(开发环境)或.env.prod(生产环境):

  • 修改DJANGO_PORT:第一个项目保留默认8000,第二个项目改为8001
  • 修改DOCKER_PORT:第一个项目设为8000:8000,第二个项目设为8001:8000
  • 若使用PostgreSQL数据库:第一个项目POSTGRES_PORT设为5432:5432,第二个项目改为5433:5432,同时同步修改.env里的POSTGRES_PORT变量值为5433
  • 若启用Nginx反向代理:第一个项目NGINX_PORT设为80:80,第二个项目改为8080:80

2. 调整Docker Compose配置

打开项目的docker-compose.yml(开发环境)或docker-compose.prod.yml(生产环境):

  • 找到web服务的ports字段,第一个项目保持"8000:8000",第二个项目改为"8001:8000"(容器内部端口无需修改,仅调整宿主机映射端口)
  • 若有db服务,修改其ports字段:第一个项目"5432:5432",第二个项目改为"5433:5432"
  • 若有nginx服务,修改其ports字段:第一个项目"80:80",第二个项目改为"8080:80"

3. 验证Nginx配置(若启用)

打开项目内的nginx/conf.d/app.conf(开发)或nginx/prod.conf(生产):

  • 确认listen指令为容器内部的80端口(无需修改)
  • 确认proxy_pass指向web:8000(对应容器内的Django服务端口,无需修改)
  • 无需调整容器内Nginx的监听端口,仅通过Docker Compose映射不同宿主机端口即可避免冲突

4. 启动与验证

  • 进入每个项目的根目录,分别执行启动命令:
    • 开发环境:docker-compose up -d
    • 生产环境:docker-compose -f docker-compose.prod.yml up -d
  • 执行docker ps命令,查看所有容器的端口映射状态,确保没有端口冲突

内容的提问来源于stack exchange,提问作者Eric Acevedo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.20 13:48:18