Docker 学习(三) 镜像常用命令

mac2025-02-05  18

文章目录

Docker 镜像常用命令搜索镜像下载镜像列出镜像删除本地镜像保存镜像加载镜像构建镜像

Docker 镜像常用命令

搜索镜像

搜索存放在 Docker Hub 中的镜像。 命令格式:

docker search [OPTIONS] TERM

可以通过docker search --help来查看帮助。如下:

选项说明-f, --filter过滤输出–format通过Go语言模板文件展示–limit最多输出多少条结果–no-trunc不截断输出,显示完整的输出

关于 filter 支持三个参数过滤。分别是

stars 过滤收藏数,例如:docker search --filter "stars=10" java,starts 大于10的is-automated 过滤是否是自动构建,例如:docker search --filter "is-automated=true" javais-official 过滤是否是官方的仓库,例如:docker search --filter "is-official=true" java

例:

docker search java --limit 10

下载镜像

使用docker pull 从 Docker Registry 上下载镜像。

选项说明-a, --all-tags下载库中所有标签的镜像–disable-content-trust忽略镜像的校验-q, --quiet禁止输出详细信息

示例1:

docker pull java

执行该命令后,Docker 会从 Docker Hub 中的 java 仓库下载最新版本的 Java 镜像。

示例2: 指定下载的镜像标签,以及 Docker Registry 地址:

docker pull reg.itmuch.com/java:7

列出镜像

格式:

docker images [OPTIONS] [REPOSITORY[:TAG]] 选项说明-a, --all展示所有镜像(包括中间镜像层,默认情况下,过滤中间镜像层)–digests显示摘要信息-f, --filter过滤输出–no-trunc不截断输出,显示完整镜像信息-q, --quiet只显示镜像ID

示例:

docker images docker images java docker images java:8

输出:

删除本地镜像

格式:

docker rmi [OPTIONS] IMAGE [IMAGE...] 选项说明-f, --force强制删除–no-prune不移除该镜像的过程镜像,默认移除

示例:

docker rmi nginx docker rmi 808bc042ca6a docker rmi -f $(docker images)

保存镜像

格式:

docker save [OPTIONS] IMAGE [IMAGE...] 选项说明-o, --output输出到文件,而非标准输出

示例:

# 将 java 镜像保存成 java.tar 文件 docker save java > java.tar docker save -o java.tar java

加载镜像

从文件中加载镜像。

格式:

docker load [OPTIONS] 选项说明-i, --input从文件中加载而非标准输入-q, --quiet静默加载

示例:

docker load < java.tar docker load -i java.tar

构建镜像

通过 Dockerfile 构建镜像。有关构建镜像的内容会在后面详细讲解。

这个参数很多,我也没有一一试过,所以这里的仅供参考。

格式:

docker build [OPTIONS] PATH | URL | - 选项缩写参数类型说明–add-hostlist添加自定义从host到IP的映射,格式为(host:ip)–build-arglist设置构建时的变量–cache-from作为缓存源的镜像–cgroup-parentstring容器可选的父cgroup–compress使用gzip压缩构建上下文–cpu-periodint限制CPU CFS (Completely Fair Scheduler) 周期–cpu-quotaint限制CPU CFS (Completely Fair Scheduler) 配额–cpu-shares-cintCPU使用权重(相对权重)–cpuset-cpusstring指定允许执行的CPU–cpuset-memsstring指定允许执行的内存–disable-content-trust忽略校验–file-fstring指定Dockerfile的名称,默认是‘PATH/Dockerfile’–force-rm删除中间容器–iidfilestring将镜像ID写到文件中–isolationstring容器隔离技术–labellist设置镜像使用的元数据–memory-mbytes设置内存限制–memory-swapbytes设置Swap的最大值为内存+swap,如果设置为-1表示不限swap–networkstring在构建期间设置RUN指令的网络模式–no-cache构建镜像过程中不使用缓存–pull总是尝试去更新镜像的新版本–quiet-q静默模式,构建成功后只输出镜像ID–rm构建成功后立即删除中间容器–security-optstring安全选项–shm-sizebytes指定/dev/shm 目录的大小–tag-tlist设置标签,格式:name:tag,tag可选–targetstring设置构建时的目标构建阶段–ulimitulimitUlimit 选项

示例:

docker build -t itmuch/some-repo:some-tag .

当然这样直接执行是不会成功的。该命令后面会有说明。


Docker 命令:https://docs.docker.com/engine/reference/commandline/docker/

最新回复(0)