生成器 Docker 图像生成 运行 容器
Builder Docker image resulting in running container
我正在尝试寻找构建和 运行 Docker 图像和容器的最佳实践。在下面的示例中,我将参考 this Dockerfile.
目前我使用这个命令构建镜像:
$ docker build -t <imagename> .
但由于某些奇怪的原因,最终导致 运行ning and 附加到容器:
$ 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%
$
这正常吗?我实际上只想构建图像并使用单独的命令启动容器。
不太确定现在这里发生了什么。
您的最后一个命令 (RUN ruby hellotrello.rb
) 可能应该是 运行ning 在您 run
您的容器时,而不是在构建它时。尝试从 Dockerfile 中删除它,重新构建图像并 运行 docker run hellotrello ruby hellotrello.rb
。
另一种选择是将 RUN
重命名为 CMD
而不是 运行 docker run hellotrello
(不带参数)。
我正在尝试寻找构建和 运行 Docker 图像和容器的最佳实践。在下面的示例中,我将参考 this Dockerfile.
目前我使用这个命令构建镜像:
$ docker build -t <imagename> .
但由于某些奇怪的原因,最终导致 运行ning and 附加到容器:
$ 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%
$
这正常吗?我实际上只想构建图像并使用单独的命令启动容器。
不太确定现在这里发生了什么。
您的最后一个命令 (RUN ruby hellotrello.rb
) 可能应该是 运行ning 在您 run
您的容器时,而不是在构建它时。尝试从 Dockerfile 中删除它,重新构建图像并 运行 docker run hellotrello ruby hellotrello.rb
。
另一种选择是将 RUN
重命名为 CMD
而不是 运行 docker run hellotrello
(不带参数)。