小白向,好几年没操作了,纯坤了~~~
Version:
Docker -v=>26.0.0Docker Desktop=>4.29.0
结论
快进到结论。
容器必须有个前台进程,如果没有前台进程执行,容器认为空闲,就会自行退出。
解决方法
自己手动创建并携带以下参数
run时增加-it
docker run -it -d python:3.9
run时增加sleep infinity
docker run -d python:3.9 sleep infinity
由上分析,桌面端的 docker 由官方镜像直接创建的容器命令没有保活且无运行进程,例如
linux
[{"url":"https://static.ksh7.com/post/docker-without-process/0085UwQ9gy1hprqd72h3uj311g10uq8e.webp?imageMogr2/thumbnail/!50p","dataset":{"originPic":"https://static.ksh7.com/post/docker-without-process/0085UwQ9gy1hprqd72h3uj311g10uq8e.webp","thumbnail":""}},{"url":"https://static.ksh7.com/post/docker-without-process/0085UwQ9gy1hprqf8vmmuj30gs0ey75l.webp?imageMogr2/thumbnail/!50p","dataset":{"originPic":"https://static.ksh7.com/post/docker-without-process/0085UwQ9gy1hprqf8vmmuj30gs0ey75l.webp","thumbnail":""}}]
通过 Copy docker run 复制出 run 命令,可以看出是符合上面结论分析的
docker run --restart=no --runtime=runc -d python:3.9
适合没有进程的镜像创建的容器使用~
























