没有设置WORKDIR的Docker运行不起作用

时间:2016-02-13 12:56:23

标签: docker

这不起作用:

docker run -d -p 80:80 image /go/src/hello

这有效:

docker run -w /go/src/ -d -p 80:80 image ./hello

我对上述结果感到困惑 我更喜欢第一个,但它不起作用。任何人都可以提供帮助。

1 个答案:

答案 0 :(得分:0)

这取决于ENTRYPOINT(您可以通过docker inspect --format='{{.Config.Entrypoint}}' image看到它)

默认ENTRYPOINTsh -c,两者都有效 对于任何其他ENTRYPOINT,它可能会在执行任何操作之前位于正确的文件夹中。

另外,docker log <container>将有助于了解第一次尝试作为输出发出的内容。

作为OP Clerk comments,它来自golang Dockerfile/image,这意味着&#39;你好&#39;将引用hello中的已编译$GOPATH/bin可执行文件或src文件夹中使用go build构建的可执行文件。