一段时间以来,我一直在用头撞墙,需要一点帮助。
我有一个从 Dockerfile 构建的 docker 容器。当我尝试运行该容器时(以交互方式 [-i] 或分离 [-d]),它会产生以下错误:
2014/06/04 21:17:40 exec: "node": executable file not found in $PATH
这就是我尝试启动容器的方式(出于安全原因,通用):
sudo docker run -i -t -p port:port containername:containerversion node /path/to/node/app/nodeapp.js
麻烦和令人困惑的是,当我在没有附加该命令的情况下运行容器时,我可以 cd 进入目录/path/to/node/app 并运行:
node nodeapp.js
这对我来说很好。此外,当我比较“which node”命令的内容和“echo $PATH”的输出时,我发现一切都正常。那么,这到底为什么拒绝承认我是它的主人,它应该按照我说的去做呢?
最佳答案
nodejs
应该可以了。
我不知道为什么,但在我的情况下,它安装了名为 nodejs
而不是 node
。
关于node.js - 使用 node.js 应用程序启动 docker 容器会产生错误;提示 PATH,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24048002/