【Docker】第三章 镜像管理

3.1 镜像是什么

        简单说,Docker镜像是一个不包含Linux内核而又精简的Linux操作系统

3.2 镜像从哪里来

        Docker Hub 是由Docker公司负责维护的公共注册中心,包含大量的容器镜像,Docker工具默认从这个公共镜像库下载镜像。

        https://hub.docker.com/explore 默认是国外的源,下载会慢

3.2.1 建议配置国内镜像仓库:

  • vi /etc/docker/daemon.json
{
 "registry-mirrors": ["https://registry.docker-cn.com"]
}
  • 配置镜像后需要重启

systemctl daemon-reload

刷新deamon ,保证配置文件修改生效

systemctl restart docker

启动 docker

3.3 镜像与容器联系

 

1. 镜像

  • 多层构成
  • 通过docker history <ID/NAME> 查看镜像中各层内容及大小
  • 每层对应着Dockerfile中的一条指令
  • 默认存储在/var/lib/docker/<storage-driver>

2. 容器

  • 读写层

        在镜像的最上面加了一层读写层,在运行容器里做的任何文件改动,都会写到这个读写层。如果容器删除了,最上面的读写层也就删除了,改动也就丢失了。 Docker使用存储驱动管理镜像每层内容及可读写层的容器层。

3.4 存储驱动

 

3.5 镜像管理命令

指令

描述

docker image --help查看docker image的指令帮助

docker image ls

列出镜像 = docker images

docker image build

构建镜像来自Dockerfile

docker image history

查看镜像历史(分层)

docker image inspect

显示一个或多个镜像详细信息

docker image pull

从镜像仓库拉取镜像

docker image push

推送一个镜像到镜像仓库

docker image rm

移除一个或多个镜像

docker image prune

移除未使用的镜像。没有被标记或被任何容器引用的。

docker image tag

创建一个引用源镜像标记目标镜像(持续集成时需要

docker export

容器 -  导出容器文件系统到tar归档文件

docker image import

容器 -  导入容器文件系统tar归档文件创建镜像

docker image save

镜像 -  导出所有的镜像到一个tar归档文件

docker image save nginx:1.11 > nginxl.11.tar

du -sh nginx1.11.tar   #当前(目录下的所有)文件占用磁盘大小和总大小

docker image load

镜像 -  加载镜像来自tar归档或标准输入

3.6 实战

  • 保存镜像

        docker image save nginx:1.11 > nginxl.11.tar

  • 加载镜像(如果已存在镜像则不会新增

        docker load < nginx1.11.tar 

 

  • 导出容器(CONTAINER ID = 6832bbd31762 )

        docker export 6832bbd31762 busybox.tar

  • 导入容器

        docker image import busybox.tar

        docker image import busybox.tar busybox:self

 

posted @   随风落木  阅读(15)  评论(0编辑  收藏  举报  
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
点击右上角即可分享
微信分享提示