操作镜像

1.查看镜像

  • 列出镜像
  1. docker images
  • 镜像体积
docker system df

2.搜索镜像

docker search 镜像名称

3.拉取镜像

docker pull [选项] [Docker Registry 地址[:端口号]/]仓库名[:标签]

4.删除镜像

  • 删除镜像
docker rmi [选项] <镜像1> [<镜像2> ...]
  • 删除全部镜像
docker rmi $(docker images -q)
  • 强制删除所有镜像
docker rmi -r $(docker images -q)

5.虚悬镜像

  • 列出所有虚悬镜像
docker image ls -f dangling=true
  • 删除所有虚悬镜像
docker image prune
  • 强制删除所有虚悬镜像
docker rmi $(docker images -q -f dangling=true)

操作容器

1.查看容器

  • 查看正在运行的容器
docker ps
  • 查看所有容器
docker ps –a
  • 查看最后一次运行的容器
docker ps –l
  • 查看停止的容器
docker ps -f status=exited

2.创建容器

  • 语法
docker run 参数 镜像名称:镜像标签 /bin/bash
  • 参数

    • -i:表示运行容器,如果不加该参数那么只是通过镜像创建容器,而不启动。
    • -t:表示容器启动后会进入其命令行。加入这两个参数后,容器创建就能登录进去
    • -d:在run后面加上-d参数,则会创建一个守护式容器在后台运行(这样创建容器后不会自动登录容器)
    • --name :为创建的容器命名
    • -v:表示目录映射关系(前者是宿主机目录,后者是映射到宿主机上的目录)
    • -p:表示端口映射,前者是宿主机端口,后者是容器内的映射端口
    • 进入容器之后,初始化执行的命令:/bin/bash;可写可不写

3.操作容器

  • 启动容器
docker start [container ID or NAMES]
  • 关闭容器
docker stop [container ID or NAMES]
  • 重启容器
docker restart [container ID or NAMES]

4.删除容器

  • 删除容器
docker rm [container ID or NAMES]
  • 清理所有处于终止状态的容器
docker container prune

5.其他操作

  • 文件拷贝
docker cp 需要拷贝的文件或目录 容器名称:容器目录
  • 查看容器信息
docker inspect [container ID or NAMES]
  • 进入容器
docker exec -it [container ID or NAMES] /bin/bash
  • 查看容器日志
docker logs -f [container ID or NAMES]
  • 查看容器挂在目录
docker inspect [container ID or NAMES] | grep Mounts -A 20

备份与恢复

1.创建镜像

docker commit {正在运行容器名称/容器ID} {镜像名称}:{镜像标签} {ImageName} : {Tag}
# 例如
docker commit a2e5f03a9eab redis:version_1.0.0

2.保存镜像

docker save -o {压缩包存放路径} {镜像名称/镜像ID}
# 例如
docker save -o redis.tar redis:version_1.0.0

3.恢复镜像

docker load -i {备份的镜像文件} 
# 例如
docker load -i redis.tar

更新时间:{docsify-updated}