Dockerfile错误,在运行docker上找不到“<filename>”
我发现以下讨论重新:得到一个
“在$ PATH中找不到可执行文件”
这解决了我的问题,但只是部分。 在我最后的命令我指定:
CMD /home/ubuntu/node-v0.10.16-linux-x64/bin/node launch.js
图像生成没有任何错误或警告。 但是,当我泊坞窗运行<image>
,我现在得到以下错误:
/ bin / sh:1:/home/ubuntu/node-v0.10.16-linux-x64/bin/node:找不到
该目录包含在我的ENV PATH
语句中。 我还需要寻找什么?
该目录包含在我的ENV PATH语句中
这似乎并不相关,因为您正在提供命令的完整path。
它应该只是表示在运行容器中不存在完整path。
为了检查:
- 删除您的
Dockerfile
中的CMD - build立和运行你的容器
- 在正在运行的容器中打开一个bash(除非默认的docker运行打开一个bash会话)
那是:
docker exec -it <yourContainer> bash ls /home/ubuntu/node-v0.10.16-linux-x64/bin/node
要么:
docker run -it --rm <yourContainer> bash which node
它应该在/usr/sbin/node
。
由于/usr/sbin/
位于root
帐户的$PATH
,因此CMD
可以简单地为:
CMD [ "node", "/path/to/your/launch.js" ]