Docker容器使用特定命令,将当前容器从一种状态转为另一种状态,使当前容器处于不同的状态。
生命周期分为5种:
-
Created: 已创建
-
Running: 运行中
-
Stopped: 停止
-
Paused: 暂停中
-
Deleted: 删除
以下为生命周期状态转换图例:
以下基于NGINX容器使用nginx容器进行演示说明。
Created: 已创建
命令:
docker create [镜像名称|镜像ID]
lua
docker create nginxe62a07316961776e5ad3251acbcdd4c9c708c1232373daf6b6af7e671c46bf72
使用docker create nginx
会基于NGINX创建一个容器,结果状态为已创建状态(created)。
Running: 运行中
命令:
docker start [容器名称|容器ID]
docker run [容器名称|容器ID]
sql
docker start e62a07316961e62a07316961
使用docker start e62a07316961
启动指定ID的容器,结果状态为已运行状态(running)。
arduino
docker run -d nginxec866cf4198e848bd33bfbffc29b32c06439382e5d1f46a00ad134fe25adda06
使用docker run -d nginx
会基于NGINX创建并运行一个容器,结果状态也为已运行状态(running)。
Stopped: 停止
命令:
docker stop[容器名称|容器ID]
arduino
docker stop ec866cf4198eec866cf4198e
使用docker stop ec866cf4198e
将停止指定ID的容器,结果状态为已运行状态(stopped)。
Paused: 暂停中
命令:
docker pause [容器名称|容器ID]
docker unpause [容器名称|容器ID]
css
docker pause ec866cf4198eec866cf4198e
使用docker pause ec866cf4198e
将暂停指定ID的容器,结果状态为已暂停状态(pause)。暂停状态容器可以使用unpause
恢复运行状态。
docker unpause ec866cf4198eec866cf4198e
使用docker unpause ec866cf4198e
将恢复指定ID的容器为运行状态,结果状态为运行状态(running)。
Deleted: 删除
命令:
docker rm [容器名称|容器ID]
arduino
docker rm ec866cf4198eError response from daemon: cannot remove container "/frosty_williamson": container is running: stop the container before removing or force remove
直接删除运行中容器,会弹出警告错误。返回信息告诉你,需先停止容器,才可以删除。或者使用-f参数进行强制删除。
arduino
docker stop ec866cf4198eec866cf4198edocker rm ec866cf4198eec866cf4198e
先使用docker stop ec866cf4198e
停止指定ID容器,再使用docker rm ec866cf4198e
删除指定ID的容器,结果状态为删除状态(deleted)。
以上就是docker的生命周期的五种状态,状态间的转换说明。学习docker,掌握生命周期,对于学习docker,至关重要。希望对你有帮助。
读完后,忍不住要加个关注!不是我吹,但你会后悔没关注的!