2015-03-02 109 views
0

我正在试图找到构建和运行Docker镜像和容器的最佳实践。在下面的例子中,我会参考this Dockerfile生成器运行容器的Docker镜像

在我使用这个命令来构建图像的时刻:

$ docker build -t <imagename> . 

但对于一些奇怪的原因,在运行附着在容器结束:

$ docker build -t hellotrello . 
[...] 
Step 13 : RUN ruby hellotrello.rb 
---> Running in bf3edd441128 
[2015/03/01 19:58:54.750] !! Application Debug message: hellotrello started 
^C% 
$ 

是这通常?我实际上只是想构建图像并使用单独的命令来启动容器。

不知道现在发生了什么。

回答

1

您的最后一条命令(RUN ruby hellotrello.rb)应该可以在您的容器中运行,而不是在构建时运行。尝试从Dockerfile中删除它,重新生成映像并运行docker run hellotrello ruby hellotrello.rb

另一个选项是将RUN重命名为CMD,并且运行docker run hellotrello(不带参数)。

+0

这就是问题所在。谢谢老乡,用户3538553! – frdmn 2015-03-02 09:27:20