当前位置: 首页 > 知识库问答 >
问题:

Dockerfile错误,运行docker时“找不到”

金皓君
2023-03-14

我发现下面的讨论是:得到一个

“在$PATH中找不到可执行文件”

那解决了我的问题,但只是部分的。在我的最后一个命令中,我指定:

cmd/home/ubuntu/node-v0.10.16-linux-x64/bin/node launch.js

映像生成时没有任何错误或警告。但是,当我docker运行时,我现在得到以下错误:

/bin/sh:1:/home/ubuntu/node-v0.10.16-linux-x64/bin/node:找不到

该目录包含在我的env path语句中。我还需要找什么?

共有1个答案

陶刚豪
2023-03-14

该目录包含在我的ENV PATH语句中

这似乎并不相关,因为您提供的是命令的完整路径。
这仅仅意味着运行容器中不存在完整路径。

为了检查:

  • 删除DockerFile
  • 中的CMD
  • 生成并运行容器
  • 在您的运行容器中打开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" ]
 类似资料:
  • 我有以下Dockerfile: 以及以下docker-compose.yml: 如果我通过docker cmd以以下方式手动运行Dockerfile: 看起来一切正常,我得到了它实际执行的应用程序输出日志: 但是,当我试图通过docker-comment以以下方式执行我的应用程序时: 我的应用程序似乎启动正常,但无法继续执行。以下是输出: 我尝试执行show logs命令: 但我得到的唯一记录是第

  • 当我使用Jikes rvm运行我的程序“genregex.class”时, 我得到运行时错误: 下面是我的代码 即使在我添加一行“import java.util.scanner;”我还是犯了这个错误。有线索吗?谢谢!

  • 我正在完全成功地使用SupportMapFragment。我一点问题都没有。 My Fragment类(包含SupportMapFragment) 我在我的清单中拥有这里描述的所有所需权限。 这没有引起任何问题,但我很好奇这意味着什么。我没有找到任何答案

  • 问题内容: 我和安装: 然后,我按照https://helm.sh/docs/using_helm/中的说明进行操作: 我已经下载了https://get.helm.sh/helm-v2.13.1-linux-amd64.tar.gz 我跑了 $ tar -xzvf Downloads/helm-v2.13.1-linux-amd64.tar.gz linux-amd64/ linux-amd64

  • docker错误: PS C:\Windows\System32>docker运行测试错误:出现JNI错误,请检查线程“main”java.lang.noClassDeffounderRorr:javax/JMSException在java.lang.Class.GetDeclaredMethods0(本机方法)在java.lang.Class.GetDeclaredMethods(class.j

  • 问题内容: 我添加了在“ docker-compose”期间安装软件包。但是,当我运行时发生了以下错误。我发现程序包保存在中。 运行docker-compose并进行构建 docker-compose.yml Docker文件 main.go 更新1 我注意到以下目录之间的巨大差异。 更新2 正如@aerokite所说,“卷”正在覆盖下载的软件包。我像以下内容进行了更改,并且有效。 Docker文