一、生命周期相关
1.1 docker create <镜像id>
解释:为只读文件系统添加一层可读写层【top layer】,生成可读写文件系统,该命令状态下容器为静态容器,并没有运行。
1.2 docker start or restart <镜像id>
解释:为可读写文件系统添加一个进程空间【包括进程】,生成动态容器【running container】
1.3 docker run <镜像id>
解释:docker create+docker start
1.4 docker stop <镜像id>
解释:向运行的容器中发一个SIGTERM的信号,然后停止所有的进程。即为docker start的逆过程。
1.5 docker kill <镜像id>
docker kill向容器发送不友好的SIGKILL的信号,相当于快速强制关闭容器,与docker stop的区别在于docker stop是正常关闭,先发SIGTERM信号,清理进程,再发SIGKILL信号退出。
1.6 docker pause <镜像id>
解释:暂停容器中的所有进程,
1.7 docker commit <容器id>
解释:把容器的可读写层转化成只读层,即从容器状态【可读写文件系统】变为镜像状态【只读文件系统】,可理解为【固化】。
1.8 docker build
解释:docker build=docker run【运行容器】+【进程修改数据】+docker commit【固化数据】,不断循环直至生成所需镜像。
二、查询相关
2.1 docker images
解释:docker images 列出当前镜像【以顶层镜像id来表示整个完整镜像】,每个顶层镜像下面隐藏多个镜像层。
2.2 docker images -a
解释:docker images -a列出所有镜像层【排序以每个顶层镜像id为首后接该镜像下的所有镜像层】,依次列出每个镜像的所有镜像层。
2.3 docker history <镜像id>
解释:列出该镜像id下的所有历史镜像。
2.4 docker ps
解释:列出所有运行的容器【running container】
2.5 docker ps -a
解释:列出所有容器,包括静态容器【未运行的容器】和动态容器【running container】
2.6 docker inspect <容器id> or <镜像id>
解释:提取出容器或镜像最顶层的元数据。
2.7 docker info
解释:显示 Docker 系统信息,包括镜像和容器数。
三、操作类命令
3.1 docker rm <容器id>
解释:docker rm会移除镜像,该命令只能对静态容器【非运行状态】进行操作。
通过docker rm -f <container-id>的-f (force)参数可以强制删除运行状态的容器【running container】。
3.2 docker rmi <镜像id>
解释:删除一个镜像
3.3 docker exec <运行中的容器id>
解释:docker exec会在运行状态的容器中执行一个新的进程。
3.4 docker export <容器id>
解释:docker export命令创建一个tar文件,并且移除了元数据和不必要的层,将多个层整合成了一个层,只保存了当前统一视角看到的内容。