这不起作用:
docker run -d -p 80:80 image /go/src/hello
这有效:
docker run -w /go/src/ -d -p 80:80 image ./hello
我对以上结果感到困惑。
我喜欢第一个,但是不起作用。任何人都可以提供帮助。
最佳答案
它取决于ENTRYPOINT
(您可以使用docker inspect --format='{{.Config.Entrypoint}}' image
看到它)
默认的ENTRYPOINT
为sh -c
,两者都应该起作用。
与其他ENTRYPOINT
一起使用之前,它可能希望位于正确的文件夹中。
另外,docker log <container>
有助于了解第一次尝试输出的内容。
与OP Clerk comments一样,它来自golang Dockerfile/image,这意味着“hello”将引用hello
中的已编译$GOPATH/bin
可执行文件,或在src
文件夹中使用go build构建的可执行文件。
关于docker - 没有设置WORKDIR的Docker无法运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35380134/