跳转至

04.常见命令

常见命令图解

image

其它的查看官方文档: https://docs.docker.com

案例:查看DockerHub,拉取Nginx镜像,创建并运行Nginx容器

需求:

  1. 在Dockerhub中搜索Nginx镜像,查看镜像名称
  2. 拉取Nginx镜像
  3. 查看本地镜像列表
  4. 创建并运行Nginx容器
  5. 查看容器
  6. 停止容器
  7. 再次启动容器
  8. 进入Nginx容器
  9. 删除容器
docker exec -it nginx bash
# -it: 以交互式命令进入容器
# nginx 容器名
# bash 交互终端

# 退出容器
exit

# 进入容器直接执行某个命令
docker exec -it mgsql msql -uroot -p123

导入导出

docker save postgis/postgis > postgis.tar

docker load -i /usr/tar1/postgis.tar

查看容器状态

停止所有正在运行的容器

docker stop $(docker ps -q)

查看每个 Docker 容器占用的运行内存

docker stats

清理相关

Docker 在长时间使用的情况下,经常需要删除旧的容器并创建新的容器,长此以往,Docker 的数据卷 volumes 会产生了非常多的僵尸文件,这些将是稳健大都是未绑定容器的目录

查询僵尸文件

# 1.9以上
docker volume ls -qf dangling=true

# 1.13版本
docker system df

移除所有容器

docker rm $(docker ps -a -q)

删除所有停止的容器

docker container prune

删除未使用的镜像

删除未使用的镜像(dangling images):

docker image prune

使用-a 标志删除所有未被任何容器使用的镜像:

docker image prune -a

删除未使用的卷

卷是 Docker 容器数据的持久化存储。如果不再需要它们,可以删除未使用的卷:

docker volume prune

删除未使用的网络

Docker 网络如果没有被任何容器使用,也可以清理:

docker network prune

彻底清理 Docker 系统

如果你想删除所有未使用的容器、镜像、卷和网络,可以使用以下命令:

docker system prune

该命令会删除以下内容:

  • 停止的容器
  • 未使用的网络
  • dangling 镜像
  • 未使用的卷

如果要删除所有的未使用资源,包括所有未被使用的镜像,可以使用 -a 标志:

docker system prune -a

查看 Docker 镜像和容器占用的空间

如果你想查看 Docker 系统占用的空间,可以使用:

docker system df

评论