docker 常用命令

镜像类

docker build --rm=true . 构建镜像
docker pull ${IMAGE} 安装镜像
docker images 显示已经安装的镜像
docker images --no-trunc 显示已经安装镜像的详细内容
docker rmi ${IMAGE_ID} 删除指定镜像
docker rmi $(docker images | grep 'none' | awk '{print $3}') 删除所有没有标签的镜像
docker rm $(docker ps -aq) 删除所有的镜像
docker rmi $(docker images --quiet --filter "dangling=true") 删除未使用的镜像

容器类

docker run 运行容器  docker run -d -p 主机端口1:容器端口1 主机端口2:容器端口2
docker ps 显示正在运行的容器
docker ps -a 显示所有的容器
docker stop ${CID} 停止指定容器
docker stop docker ps -q 停止所有正在运行的容器
docker ps -a --filter "exited=1" 显示所有退出状态为1的容器
docker rm ${CID} 删除指定容器
docker rm -fv ${CID} 彻底清除指定容器
docker ps -a | grep wildfly | awk '{print $1}' | xargs docker rm -f 使用正则表达式删除容器
docker rm -f $(docker ps -a | grep Exit | awk '{ print $1 }') 删除所有退出的容器
docker rm $(docker ps -aq) 删除所有的容器
docker inspect --format '{{ .NetworkSettings.IPAddress }}' ${CID} 显示指定容器的IP
docker attach ${CID} 进入容器
docker exec -it ${CID} bash 进入容器打开一个shell
docker ps | grep wildfly | awk '{print $1}' 通过正则表达式查找容器的镜像ID

docker volume ls 查看所有卷标
docker volume inspect ${vagrant_name} 查看具体的volume对应的真实地址

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

docker system prune : 可以用于清理磁盘,删除关闭的容器、无用的数据卷和网络,以及 dangling 镜像(即无 tag 的镜像)。 
docker system prune -a : 清理得更加彻底,可以将没有容器使用 Docker镜像都删掉。 注意,这两个命令会把你暂时关闭的容器,以及暂时没有用到的 Docker 镜像都删掉了。 

docker-compose up -d

标签: none

已有 2 条评论

  1. fuhui

    apt-get update
    apt-get install net-tools
    apt-get install procps

  2. fuhui

    容器清理

    docker container prune : 仅删除停止运行的容器。 docker rm -f $(docker ps -aq) : 删除所有容器(包括停止的、正在运行的)。 docker container rm -f $(docker container ls -aq) : 同上。

    镜像清理

    docker rmi :通过镜像的id来删除指定镜像。

    有一些镜像是隐形的:

    子镜像,就是被其他镜像引用的中间镜像,不能被删除。 悬挂状态的镜像,就是不会再被使用的镜像,可以被删除。

    其他命令:

    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 -v 命令,类似于 Linux上的 df 命令,用于查看 Docker 的磁盘使用情况:

    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 镜像都删掉了。

评论已关闭