2019年2月

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