docker命令详解
Docker常用命令详解
docker ps 查看当前正在运行的容器
docker ps -a 查看所有容器的状态
docker start/stop id/name 启动/停止某个容器
docker attach id 进入某个容器(使用exit退出后容器也跟着停止运行)
docker exec -ti id 启动一个伪终端以交互式的方式进入某个容器(使用exit退出后容器不停止运行)
docker images 查看本地镜像
docker rm id/name 删除某个容器
docker rmi id/name 删除某个镜像
docker run --name test -ti ubuntu /bin/bash 复制ubuntu容器并且重命名为test且运行,然后以伪终端交互式方式进入容器,运行bash
docker build -t soar/centos:7.1 . 通过当前目录下的Dockerfile创建一个名为soar/centos:7.1的镜像
docker run -d -p 2222:22 --name test soar/centos:7.1 以镜像soar/centos:7.1创建名为test的容器,并以后台模式运行,并做端口映射到宿主机2222端口,P参数重启容器宿主机端口会发生改变
容器生命周期管理 — docker [run|start|stop|restart|kill|rm|pause|unpause]
容器操作运维 — docker [ps|inspect|top|attach|events|logs|wait|export|port]
容器rootfs命令 — docker [commit|cp|diff]
镜像仓库 — docker [login|pull|push|search]
本地镜像管理 — docker [images|rmi|tag|build|history|save|import]
其他命令 — docker [info|version]
容器清理
docker container prune : 仅删除停止运行的容器。
docker rm -f $(docker ps -aq) : 删除所有容器(包括停止的、正在运行的)。
docker container rm -f $(docker container ls -aq) : 同上。
镜像清理
docker rmi
有一些镜像是隐形的:
子镜像,就是被其他镜像引用的中间镜像,不能被删除。
悬挂状态的镜像,就是不会再被使用的镜像,可以被删除。
其他命令:
docker image ls -f dangling=true : 可以列出所有悬挂状态的镜像
并使用命令 docker image rm $(docker image ls -f dangling=true -q) 或 docker image prune进行删除。
docker image rm $(docker image ls -q) :删除所有镜像。但正在被容器使用的镜像无法删除。
数据卷清理
docker volume rm $(docker volume ls -q) :删除不再使用的数据卷。
docker volume prune :同上。
缓存清理
Docker 18.09 引入了 BuildKit ,提升了构建过程的性能、安全、存储管理等能力。
docker builder prune :删除 build cache。
一键清理
docker system df 命令,类似于 Linux上的 df 命令,用于查看 Docker 的磁盘使用情况:
docker system df
TYPE列出了 Docker 使用磁盘的 4 种类型:
Images :所有镜像占用的空间,包括拉取下来的镜像,和本地构建的。
Containers :运行的容器占用的空间,表示每个容器的读写层的空间。
Local Volumes :容器挂载本地数据卷的空间。
Build Cache :镜像构建过程中产生的缓存空间(只有在使用 BuildKit 时才有,Docker 18.09 以后可用)。
最后的 RECLAIMABLE 是可回收大小。
docker system prune : 可以用于清理磁盘,删除关闭的容器、无用的数据卷和网络,以及 dangling 镜像(即无 tag 的镜像)。
docker system prune -a : 清理得更加彻底,可以将没有容器使用 Docker镜像都删掉。
注意,这两个命令会把你暂时关闭的容器,以及暂时没有用到的 Docker 镜像都删掉了。
定期清理没用的数据,是个好习惯!
-----下面是清理空间的命令:
docker container prune -f
docker image prune -f
docker volume prune -f