在 Dockerfile 上使用 ENTRYPOINT 时找不到二进制文件
Can't find binary when using ENTRYPOINT on Dockerfile
我正在玩弄 docker 和这张简单的图片
FROM golang:1.13.4-stretch
ENTRYPOINT ["/bin/bash"]
当我尝试 运行 docker build -t test . && docker run -it --rm test "go version"
时,我收到错误 /bin/bash: go version: No such file or directory
如果没有 ENTRYPOINT 行,我 运行 没有问题。
另外,我用哪个shell似乎并不重要,只要线路在那里,它总是会失败。
谁能教教我是不是这样的?
仅供参考:使用 ENTRYPOINT 时容器内的 PATH 值不包括 /usr/local/go/bin(go exec 所在的位置)
我相信 shell 将 "go version"
解释为 运行 的命令,而不是带有参数 version
的命令 go
。尝试删除引号。
我正在玩弄 docker 和这张简单的图片
FROM golang:1.13.4-stretch
ENTRYPOINT ["/bin/bash"]
当我尝试 运行 docker build -t test . && docker run -it --rm test "go version"
时,我收到错误 /bin/bash: go version: No such file or directory
如果没有 ENTRYPOINT 行,我 运行 没有问题。
另外,我用哪个shell似乎并不重要,只要线路在那里,它总是会失败。
谁能教教我是不是这样的?
仅供参考:使用 ENTRYPOINT 时容器内的 PATH 值不包括 /usr/local/go/bin(go exec 所在的位置)
我相信 shell 将 "go version"
解释为 运行 的命令,而不是带有参数 version
的命令 go
。尝试删除引号。