docker容器的使用

删除docker容器

docker rm mysql

批量删除已经停止的容器

# 方法一

#显示所有的容器,过滤出Exited状态的容器,取出这些容器的ID,

sudo docker ps -a|grep Exited|awk '{print $1}'

#查询所有的容器,过滤出Exited状态的容器,列出容器ID,删除这些容器

sudo docker rm `docker ps -a|grep Exited|awk '{print $1}'`
# 方法二
#删除所有未运行的容器(已经运行的删除不了,未运行的就一起被删除了)
sudo docker rm $(sudo docker ps -a -q)

# root用户
docker rm $(docker ps -a -q)
# 方法三
#根据容器的状态,删除Exited状态的容器

sudo docker rm $(sudo docker ps -qf status=exited)

Docker 1.13版本以后,可以使用 docker containers prune 命令,删除孤立的容器。

#Docker 1.13版本以后,可以使用 docker containers prune 命令,删除孤立的容器。
sudo docker container prune
#删除所有镜像
sudo docker rmi $(docker images -q)

Docker 容器清理空间

# 删除没被container 使用的所有image
docker volumn /  image purge 

docker image purge 

删除没被container 使用的所有image,  (之前使用过的会被保留,docker ps -a查看)
删除所有关闭的容器:

docker ps -a | grep Exit | cut -d ' ' -f 1 | xargs docker rm

删除所有dangling镜像(即无tag的镜像):

docker rmi $(docker images | grep "^<none>" | awk "{print $3}")

dangling是一种特殊的,不会再被使用到的镜像,docker有专门清理dangling镜像的命令

# 群友分享的命令
docker image prune -a -f

删除所有dangling数据卷(即无用的Volume):

docker volume rm $(docker volume ls -qf dangling=true)
[root@localhost ~]# docker image prune --help

Usage:  docker image prune [OPTIONS]

Remove unused images

Options:
  -a, --all             Remove all unused images, not just dangling ones
      --filter filter   Provide filter values (e.g. 'until=<timestamp>')
  -f, --force           Do not prompt for confirmation 不提示确认

docker其他命令(储备)

sudo docker info:显示系统级别的信息,比如容器和镜像的数量等。
 
docker container ls:默认只列出正在运行的容器,-a 选项会列出包括停止的所有容器。
 
docker image ls:列出镜像信息,-a 选项会列出 intermediate 镜像(就是其它镜像依赖的层)。
 
docker volume ls:列出数据卷。
 
docker network ls:列出 network。

docker system df 命令,类似于Linux上的df命令,用于查看Docker的磁盘使用情况:

docker system df

该命令列出了 docker 使用磁盘的 4 种类型
● Images: 所有镜像占用的空间,包括拉取的镜像、本地构建的镜像
● Containers: 运行中的容器所占用的空间(没运行就不占空间),其实就是每个容器读写层的空间
● Local Volumes: 本地数据卷的空间
● Build Cache: 镜像构建过程中,产生的缓存数据

子命令

命令 描述
docker image build 从Docker文件构建映像
docker image history 显示映像的历史记录
docker image import 从tarball导入内容以创建文件系统映像
docker image inspect 显示一个或多个映像的详细信息
docker image load 从tar存档或STDIN加载映像
docker image ls 列出映像
docker image prune 删除未使用的映像
docker image pull 从注册表中拉出映像或存储库
docker image push 将映像或存储库推送到注册表
docker image rm 删除一个或多个映像
docker image save 将一个或多个映像保存到tar存档(默认情况下流式传输到STDOUT)
docker image tag 创建引用SOURCE_IMAGE的标签TARGET_IMAGE
posted @ 2023-08-10 18:01  山河剑心  阅读(29)  评论(0编辑  收藏  举报