跨境派

跨境派

跨境派,专注跨境行业新闻资讯、跨境电商知识分享!

当前位置:首页 > 卖家故事 > Docker-Image

Docker-Image

时间:2024-04-01 07:55:53 来源:网络cs 作者:晨起 栏目:卖家故事 阅读:

标签:
阅读本书更多章节>>>>

Docker

Docker 镜像是什么为什么需要镜像镜像命令总览docker imagesdocker tagdocker pulldocker pushdocker rmidocker savedocker loaddocker image inspectdocker historydocker importdocker image prunedocker build

Docker 镜像是什么

Docker image 本质上是一个 read-only 只读文件, 这个文件包含了文件系统、源码、库文件、依赖、工具等一些运行 application 所必须的文件

我们可以把 Docker image 理解成一个模板, 可以通过这个模板实例化出来很多容器

image 里面是一层层文件系统(Union File System), 可以将几层目录挂载到一起, 形成一个虚拟文件系统. 每一层文件系统我们叫做一层 layer, 联合文件系统可以对每一层文件系统设置三种权限, 只读(readonly)、读写(readwrite)和写出(whiteout-able)

镜像相当于一个模板,可以很方便的构建出来不同的对象

🍂案例

在这里插入图片描述

为什么需要镜像

在部署应用时,通过手工或写一些脚本的方式进行部署。这样部署面临问题就是云端和本地环境一致问题。用户为每个应用打包过程比较繁琐,需要配置和修改等操作,非常费劲

然而,Docker 镜像就是为了解决这个小小的打包功能,突然一夜之间成名。那么,你可能说 Docker 镜像就是个压缩包,是的,你猜对了,它就像一个压缩包文件。它是如何解决 Paas 时代所面临的云端和本地一致性问题?很简单,它是把一个镜像制作成一个完整的操作系统所有文件和对应的目录结构,这样的压缩包是跟你本地和测试环境用的操作系统一摸一样

Docker 最大的贡献就是定义了容器镜像的分层的存储格式,Docker 镜像技术的基础是联合文件系统(UnionFS),其文件系统是分层的。这样既可以充分利用共享层,又可以减少存储空间占用。Docker 镜像提供了一种打包应用程序和预配置服务器环境的便捷方式,可以很方便的将其用于个人用途或与其他 Docker 用户公开共享

镜像命令

总览

commandaliasfunction
docker imagesdocker image ls / docker image list列出本地镜像
docker tagdocker image tag给镜像打标签, 可用于推送至镜像仓库
docker pulldocker image pull从镜像仓库拉取镜像
docker pushdocker image push推送镜像到仓库
docker rmidocker image rm / docker image remove删除本地镜像
docker builddocker image build通过 dockerfile 制作镜像
docker savedocker image save将指定镜像保存成 tar 归档文件
docker loaddocker image load导入使用 docker save 命令导出的镜像
docker image inspect查看镜像详细信息
docker historydocker image history查看镜像历史
docker importdocker image import从归档文件 docker export 中创建镜像
docker image prune删除不使用的镜像

docker images

功能

列出本地镜像

语法

docker images [OPTIONS] [REPOSITORY[:TAG]]

别名

docker image ls, docker image list

参数

-a: 列出本地所有的镜像(含中间映像层, 默认情况下, 过滤掉中间映像层)--digests: 显示镜像的摘要信息-f: 显示满足条件的镜像--format: 指定返回值的模板文件--no-trunc: 显示完整的镜像信息-q: 只显示镜像 ID

🍂样例

# 列出本地全部镜像docker images# 列出本地镜像中 REPOSITORY 为 ubuntu 的镜像列表docker images ubuntu

docker tag

功能

标记本地镜像, 将其归入某一仓库

语法

docker tag SOURCE_IMAGE[:TAG] TARGET_IMAGE[:TAG]

别名

docker image tag

🍂样例

# 给 ubuntu:22.04 镜像打标签docker tag ubuntu:22.04 myregistry.com/myubuntu:22.04

docker pull

功能

从镜像仓库中拉取或者更新指定镜像

语法

docker pull [OPTIONS] NAME[:TAG|@DIGEST]

别名

docker image pull

参数

-a: 拉取所有 tagged 镜像--disable-content-trust: 忽略镜像的校验, 默认开启

🍂样例

# 拉取 nginx:1.23.3 镜像docker pull nginx:1.23.3

docker push

功能

将本地的镜像上传到镜像仓库, 要先登录到镜像仓库

语法

docker push [OPTIONS] NAME[:TAG]

别名

docker image push

参数

-a: 推送所有 tagged 镜像--disable-content-trust: 忽略镜像的校验, 默认开启

🍂样例

# 推送 bibubibu/busybox:v1 镜像docker push bibubibu/busybox:v1

docker rmi

功能

删除镜像

语法

docker rmi [OPTIONS] IMAGE [IMAGE...]

别名

docker image rm, docker image remove

参数

-f: 强制删除--no-prune: 不移除该镜像的过程镜像,默认移除

🍂样例

# 推送 bibubibu/busybox:v1 镜像docker rmi nginx:stable

docker save

功能

将指定镜像保存成 tar 归档文件

语法

docker save [OPTIONS] IMAGE [IMAGE...]

别名

docker image save

参数

-o: 输出到的文件

🍂样例

# 将 myimage:latest 镜像保存成了 myimage.tar 文件docker save -o myimage.tar myimage:latest

docker load

功能

导入使用 docker save 命令导出的镜像

语法

docker load [OPTIONS]

别名

docker image load

参数

--input, -i: 指定导入的文件, 代替 STDIN--quiet, -q: 精简输出信息

🍂样例

# 将 myimage.tar 文件导入到本地镜像docker load -i myimage.tar

docker image inspect

功能

查看镜像详细信息

语法

docker image inspect [OPTIONS] IMAGE [IMAGE...]

docker inspect 会自动检查是镜像还是容器然后显示相关信息

🍂样例

# 查看镜像详细信息docker images inspect nginx:1.23.3

docker history

功能

显示镜像历史

语法

docker history [OPTIONS] IMAGE

别名

docker image history

参数

-H , --human: 大小和日期采用人容易读的格式展现--no-trunc: 显示全部信息, 不要隔断-q, --quiet: 只显示镜像 id 信息

🍂样例

# 显示 nginx:1.25.3 镜像历史docker history -H nginx:1.25.3

docker import

功能

从归档文件中创建镜像

语法

docker import [OPTIONS] file|URL|- [REPOSITORY[:TAG]]

别名

docker image import

参数

-c: 应用 docker 指令创建镜像-m: 提交时的说明文字

🍂样例

# 从 my_ubuntu_v3.tar 文件中创建了一个名为 bibubibu/ubuntu:v4 的镜像docker import my_ubuntu_v3.tar bibubibu/ubuntu:v4

docker image prune

功能

删除不使用的镜像

语法

docker image prune [OPTIONS]

参数

-a , --all: 删除全部不使用的镜像--filter: 指定过滤条件-f, --force: 不提示是否删除

🍂样例

# 删除所有没有被已有容器使用的镜像docker image prune -a

docker build

功能

用于使用 Dockerfile 创建镜像

语法

docker build [OPTIONS] PATH | URL | -

参数

--build-arg=[]: 设置镜像创建时的变量-f: 指定要使用的 Dockerfile 路径--label=[]: 设置镜像使用的元数据--no-cache: 创建镜像的过程不使用缓存--pull: 尝试去更新镜像的新版本--quiet, -q: 安静模式, 成功后只输出镜像 ID--rm: 设置镜像成功后删除中间容器--tag, -t: 镜像的名字及标签, 通常为 name:tag 或者 name 格式; 可以在一次构建中为一个镜像设置多个标签--network: 默认 default. 在构建期间设置 RUN 指令的网络模式

🍂样例

# 使用 Dockerfile 创建了一个名为 myimage:tag 的镜像docker build -t myimage:tag

在这里插入图片描述

阅读本书更多章节>>>>

本文链接:https://www.kjpai.cn/gushi/2024-04-01/151818.html,文章来源:网络cs,作者:晨起,版权归作者所有,如需转载请注明来源和作者,否则将追究法律责任!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。

上一篇:Python 合并两张图片

下一篇:返回列表

文章评论