【发布时间】:2021-07-12 22:54:29
【问题描述】:
我正在使用 docker-compose(在 Windows 上)来启动一个 mongoDB 以及几个 nodeJS 进程(通过 SSH 在远程 CentOS 机器上)。 nodeJS 容器应该将我的项目目录中的代码挂载到/home/node/app,以便它们可以使用命令node web/run 执行它。但是,当我使用 docker context 通过 SSH 将这组容器部署到我的远程主机时,我收到一条错误消息,提示找不到 /home/node/app/web/run 处的脚本,这表明我的代码未复制/安装到容器中。
下面可以看到我正在挂载当前目录(我的项目):
web:
image: node:15.12.0
user: node
working_dir: /home/node/app
volumes:
- ./:/home/node/app:ro
ports:
- 80:80
command: node web/run
depends_on:
- events-db
我是否误解了卷在 Docker 中的工作方式?将我的代码放入容器以便执行的最佳做法是什么?
【问题讨论】:
标签: node.js docker docker-compose volumes