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

如何在Django/Node.js项目中搭配使用DDEV?

DDEV v1.18适配Node.js、Django项目方案

DDEV v1.18版本虽然官方没有内置Django和Node.js的技术栈预设,但已经有成熟的社区自定义配置方案可以实现适配,具体操作如下:

适配Node.js项目

  • 首先初始化空DDEV项目,执行命令ddev config --project-type=php --docroot=.,选择php类型作为基底不会影响Node.js服务运行,仅用来跳过官方预设校验
  • 编辑项目目录下.ddev文件夹中的config.yaml,添加post-start钩子配置,项目启动时自动安装依赖并启动Node.js服务,示例配置:

hooks:
post-start:
- exec: npm install
- exec: npm run dev &

  • 如果需要对外暴露Node.js服务端口,在config.yaml中添加额外端口映射配置,示例如下:

web_extra_exposed_ports:

  • name: node-app
    container_port: 3000
    http_port: 3000
    https_port: 3001
  • 执行ddev start启动项目后,即可通过配置的端口访问Node.js应用

适配Django项目

  • 先初始化DDEV项目,执行命令ddev config --project-type=python --docroot=.,v1.18已经内置基础Python运行环境,仅缺少Django专属预设
  • 编辑.ddev/config.yaml,添加post-start钩子配置,启动时自动安装依赖、执行迁移并启动Django服务:

hooks:
post-start:
- exec: pip3 install -r requirements.txt
- exec: python3 manage.py migrate
- exec: python3 manage.py runserver 0.0.0.0:8000 &

  • 同样添加端口暴露配置,映射Django默认的8000端口:

web_extra_exposed_ports:

  • name: django-app
    container_port: 8000
    http_port: 8000
    https_port: 8001
  • 执行ddev start启动后即可正常访问Django应用,如需使用数据库可以直接调用DDEV内置的MariaDB/PostgreSQL服务,连接参数可通过ddev describe命令查看

注:如果需要调整服务启动命令、端口映射规则,直接修改对应config.yaml配置后执行ddev restart即可生效

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 23:15:07