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

Docker环境中Nodemon无法监听代码变更自动重启问题求助

问题修复方案

你遇到的Nodemon无法触发重启的核心原因是docker-compose卷挂载配置错误,没有将本地源码变更同步到容器内部,具体修复步骤如下:

问题根源说明

你当前actions服务配置的volumes: - actions:/./app属于命名卷挂载,这类存储由Docker统一管理,不会和本地源码目录做实时同步,你本地修改代码时容器内部的对应文件不会更新,Nodemon自然检测不到变更。你猜测的- "./actions:/app/action-handers"既不存在于当前生效配置中,路径也有拼写错误,即使添加也无法正常生效。

修复步骤

  • 修改docker-compose.yml中actions服务的volumes配置,替换原有的命名卷挂载为绑定挂载,将本地源码目录直接映射到容器工作目录,同时排除node_modules目录避免本地和容器依赖冲突:
# actions服务下的volumes配置修改为
volumes:
  - ./action-handlers:/app # 绑定本地源码目录到容器内的工作目录
  - /app/node_modules # 匿名卷覆盖,避免本地node_modules覆盖容器内的依赖
  • 删除全局volumes字段下的actions:声明,绑定挂载不需要提前声明命名卷。
  • 若你使用Windows/WSL或者macOS环境,存在文件系统变更事件无法传递到容器的情况,可以给Nodemon添加-L启动参数开启轮询检测,将package.json中对应的watch命令修改为nodemon -L 你的应用入口文件路径即可,轮询模式仅会消耗少量性能,可兼容所有环境的文件变更检测。

验证方法

配置修改完成后执行docker-compose up --force-recreate重启服务,再修改本地action-handlers目录下的代码,即可看到Nodemon正常触发重启。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 19:24:03