您的位置:首页 > 健康 > 养生 > 汽车之家官网首页网页版_爱采购卖家版app下载_适合30岁短期培训班_营业推广名词解释

汽车之家官网首页网页版_爱采购卖家版app下载_适合30岁短期培训班_营业推广名词解释

2025/2/23 23:52:35 来源:https://blog.csdn.net/weixin_56408536/article/details/145758976  浏览:    关键词:汽车之家官网首页网页版_爱采购卖家版app下载_适合30岁短期培训班_营业推广名词解释
汽车之家官网首页网页版_爱采购卖家版app下载_适合30岁短期培训班_营业推广名词解释

Docker 镜像管理命令

  • Docker 镜像管理命令
    • 1. 搜索镜像
    • 2.镜像加速配置和优化
    • 3. 下载镜像
    • 4. 查看本地镜像
    • 5. 镜像导出
    • 4.镜像导入
    • 5. 删除镜像
    • 6. 镜像打标签

Docker 镜像管理命令

镜像即创建容器的模版,含有启动容器所需要的文件系统及所需要的内容,因此镜像主要用于方便和快速的创建并启动容器。

镜像里面是一层层的文件系统,叫做 Union FS(联合文件系统),联合文件系统,可以将几层目录挂载到一起(就像千层饼,洋葱头,俄罗斯套娃一样),形成一个虚拟文件系统,虚拟文件系统的目录结构就 像普通 linux 的目录结构一样,镜像通过这些文件再加上宿主机的内核共同提供了一个 linux 的虚拟环 境,每一层文件系统叫做一层 layer,联合文件系统可以对每一层文件系统设置三种权限,只读 (readonly)、读写(readwrite)和写出(whiteout-able),但是镜像中每一层文件系统都是只读的, 构建镜像的时候,从一个最基本的操作系统开始,每个构建提交的操作都相当于做一层的修改,增加了 一层文件系统,一层层往上叠加,上层的修改会覆盖底层该位置的可见性,这也很容易理解,就像上层 把底层遮住了一样,当使用镜像的时候,我们只会看到一个完全的整体,不知道里面有几层,实际上也不需要知道里面有几层。

镜像直接调用宿主机的内核,镜像中只提供 rootfs,也就是只需要包括最基本的命令,配置文件和程序库等相关文件就可以了。

1. 搜索镜像

官方网站进行镜像的搜索:https://hub.docker.com/

2.镜像加速配置和优化

从国内下载官方的镜像站点有时候会很慢,因此可以更改 docker 配置文件添加一个加速器,可以通过加速器达到加速下载镜像的目的。

# docker 镜像加速配置
[root@Ubuntu2204 ~]#vim /etc/docker/daemon.json {"registry-mirrors": ["https://docker.1ms.run","https://docker.m.daocloud.io"]
}[root@Ubuntu2204 ~]#systemctl daemon-reload [root@Ubuntu2204 ~]#systemctl restart docker

3. 下载镜像

# 从 docker 仓库将镜像下载到本地,命令格式如下:
[root@Ubuntu2204 ~]#docker pull --help用法: docker pull [选项] 名称[:标签|@摘要]docker pull [OPTIONS] NAME[:TAG|@DIGEST]选项:-a, --all-tags                下载存储库中的所有带标签的镜像--disable-content-trust   跳过镜像验证(默认为 true)--platform string         如果服务器支持多平台,设置平台-q, --quiet                   抑制详细输出NAME: 是镜像名,一般的形式 仓库服务器:端口/项目名称/镜像名称
:TAG: 即版本号,如果不指定:TAG,则下载最新版镜像# 拉取alpine镜像
[root@Ubuntu2204 ~]#docker pull alpine:latest# 查看镜像分层历史
[root@Ubuntu2204 ~]#docker image history alpine:latest# 查看镜像详细信息
[root@Ubuntu2204 ~]#docker inspect alpine:latest# 镜像下载保存的路径:
/var/lib/docker/overlay2/镜像ID

4. 查看本地镜像

# docker images 可以查看下载至本地的镜像
[root@Ubuntu2204 ~]#docker images --help用法: docker images [选项] [仓库[:标签]]docker images [OPTIONS] [REPOSITORY[:TAG]]列出镜像选项:-a, --all             显示所有镜像(默认情况下隐藏中间镜像)--digests         显示摘要信息-f, --filter 过滤器    根据提供的条件过滤输出--format 字符串    使用 Go 模板格式化镜像输出--no-trunc        不截断输出-q, --quiet           仅显示镜像 ID# 执行结果的显示信息说明: 
REPOSITORY      #镜像所属的仓库名称
TAG         	#镜像版本号(标识符),默认为latest
IMAGE ID       	#镜像唯一ID标识,如果ID相同,说明是同一个镜像有多个名称
CREATED       	#镜像在仓库中被创建时间
VIRTUAL SIZE    #镜像的大小[root@Ubuntu2204 ~]#docker images[root@Ubuntu2204 ~]#docker image ls

5. 镜像导出

利用 docker save 命令可以将从本地镜像导出为一个打包 tar 文件,然后复制到其他服务器进行导入使用。

[root@Ubuntu2204 ~]#docker save --help用法: docker save [选项] 镜像 [镜像...]docker save [OPTIONS] IMAGE [IMAGE...]将一个或多个镜像保存到 tar 归档文件(默认情况下流式传输到 STDOUT)选项:-o, --output 字符串   写入到文件,而不是标准输出(STDOUT)#说明:
Docker save 使用IMAGE ID导出,在导入后的镜像没有REPOSITORY和TAG,显示为<none>docker save -o /path/file.tar IMAGE1 IMAGE2 ...
docker save IMAGE1 IMAGE2 ... > /path/file.tar[root@Ubuntu2204 ~]#docker save hello-world:latest alpine:latest -o images.tar[root@Ubuntu2204 ~]#docker save hello-world:latest alpine:latest -o images2.tar# 导出所有镜像到一个打包文件
# 使用image ID导出镜像,在导入后的镜像没有REPOSITORY和TAG,显示为<none>
[root@Ubuntu2204 ~]#docker save $(docker images -qa) -o all-images.tar[root@Ubuntu2204 ~]#docker save $(docker images | awk 'NR>1 {print $1":"$2}') -o all-images2.tar[root@Ubuntu2204 ~]#docker save $(docker image ls --format "{{.Repository}}:{{.Tag}}") -o all-images3.tar[root@Ubuntu2204 ~]#scp images.tar images2.tar 10.0.0.110:

4.镜像导入

利用 docker load 命令可以将镜像导出的打包或压缩文件再导入。

[root@Ubuntu2204 ~]#docker load --help用法: docker load [选项]docker load [OPTIONS]tar 归档文件或标准输入(STDIN)加载镜像选项:-i, --input 字符串   从 tar 归档文件读取,而不是标准输入(STDIN)-q, --quiet          抑制加载过程的输出[root@Ubuntu2204 ~]#docker load < images.tar[root@Ubuntu2204 ~]#docker load -i all-images2.tar

5. 删除镜像

[root@Ubuntu2204 ~]#docker rmi --help 用法: docker rmi [选项] 镜像 [镜像...]docker rmi [OPTIONS] IMAGE [IMAGE...]删除一个或多个镜像选项:-f, --force      强制删除镜像--no-prune   不删除未标记的父镜像[root@Ubuntu2204 ~]#docker rmi 74cc54e27dc4# 强制删除正在使用的镜像,也会删除对应的容器
[root@Ubuntu2204 ~]#docker rmi -f alpine:latest# 删除所有镜像
[root@Ubuntu2204 ~]#docker rmi -f `docker images -qa`

6. 镜像打标签

docker tag 可以给镜像打标签,类似于起别名,但通常要遵守一定的命名规范,才可以上传到指定的仓库。

[root@Ubuntu2204 ~]#docker tag --help用法: docker tag 源镜像[:标签] 目标镜像[:标签]docker tag SOURCE_IMAGE[:TAG] TARGET_IMAGE[:TAG]创建一个指向源镜像的标签目标镜像#TARGET_IMAGE[:TAG]格式一般形式
仓库主机FQDN或IP[:端口]/项目名(或用户名)/image名字:版本[root@Ubuntu2204 ~]#docker tag hello-world:latest hello-world:0.0.1

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com