gpt4 book ai didi

docker - 如何在提交的镜像中以分离模式运行Docker容器

转载 作者:行者123 更新时间:2023-12-02 19:43:46 31 4
gpt4 key购买 nike

我提取了一个名为的图像php:5.6-apache ,运行它,触摸/ var / www / html中的文件,然后提交。

然后,我尝试以分离模式运行新图像:

# docker run --name test -d staraple/php:v1

但是容器在启动后立即退出。
IMAGE                COMMAND              CREATED                STATUS       
staraple/php:v2 "apache2 -DFOREGROUN 4 seconds ago Exited (0) 3 seconds ago

首先,尽管新图像在 提交操作后丢失了 CMD

引用 https://github.com/docker/docker/pull/4000,提交后将保留CMD;

我的问题是为什么当我收到CMD时,我的容器无法在分离模式下运行。 php.5.6-apache 是官方的,我只触摸其中的一个空白文件。

ps:
当我检查json中的/ var / lib / docker / graph中的图像时,我发现新图像的Cmd配置与原始图像不同:
 old:  "Cmd":["/bin/sh","-c","#(nop) CMD [apache2 -DFOREGROUND]"]
new: "Cmd":["apache2","-DFOREGROUND"]
docker logs显示消息: https (pid 1) already running

最佳答案

我收到了forums.docker.com的答复表:

https://forums.docker.com/t/how-can-i-run-docker-containers-in-detached-mode-within-a-committed-image/255

我提交的镜像在FS上仍然有apache pid,它引入了日志“https(pid 1)已在运行”。在初次运行时,我应该确保完全关闭Apache。

就我而言,有必要在提交之前停止容器。

关于docker - 如何在提交的镜像中以分离模式运行Docker容器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26335419/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com