目录
- 1.什么是Docker Registry?
- 2.镜像源配置
- 3.镜像仓库命令
- 1.命令清单
- 2.docker login
- 2.docker pull
- 3.docker push
- 4.docker search
- 5.docker logout
1.什么是Docker Registry?
-
镜像仓库(Docker Registry)
- 功能:负责存储、管理和分发镜像,并且提供了登录认证能力, 建立了仓库的索引
- 如何:要从哪一个镜像仓库拉取镜像,通常通过DNS或IP地址来确定一个镜像仓库
- 如:hub.docker.com
-
镜像仓库管理多个Repository,Repository通过命名来区分,可分为“顶层仓库”和“用户仓库”
- 每个Repository包含一个或多个镜像,镜像通过镜像名称和标签(Tag)来区分
- 用户仓库
- 仓库名称格式为“用户名/仓库名”
- 每个仓库可以包含多个Tag(标签),每个标签对应一个镜像
-
整体视图
-
基本概念
- Repository: ·由某特定的docker镜像的所有迭代版本组成的镜像仓库
- 镜像名称(name) + 标签(tag):如 nginx:latest
- 认证能力:提供用户注册,登录、登出能力
- 索引:提供镜像的索引信息,方便检索
2.镜像源配置
- 国内镜像源
- 网易云加速器地址 https://hub-mirror.c.163.com
- 百度云加速器地址 https://mirror.baidubce.com
- 阿里云
- …
- 如何配置镜像源
- 在
/etc/docker/daemon.json
中写入如下内容(若文件不存在则新建该文件) - 如果最外层已经有了配置,不要直接覆盖,而是将下面的内容添加,然后确保json的格式正确
{"registry-mirrors": ["https://hub-mirror.c.163.com","https://mirror.baidubce.com"] }
- 添加完成后需要重新加载配置,重启 Docker
# 加载配置 sudo systemctl daemon-reload # 重启docker sudo systemctl restart docker #查看docker状态 sudo systemctl status docker
- 在
3.镜像仓库命令
1.命令清单
命令 | 功能 |
---|---|
docker login | 登陆仓库 |
docker pull | 拉取镜像 |
docker push | 推送镜像 |
docker search | 查找镜像 |
docker logout | 登出仓库 |
2.docker login
- 功能:登陆到一个Docker镜像仓库,如果未指定镜像仓库地址,默认为官方仓库 Docker Hub
- 语法:`docker login [OPTIONS] [SERVER]
- 关键参数:
-u
:登陆的用户名-p
:登录的密码
- 示例:
docker login -u 用户名 -p 密码
2.docker pull
- 功能:从镜像仓库中拉取或者更新指定镜像
- 语法:
docker pull [OPTIONS] NAME[:TAG|@DIGEST]
- 关键参数:
-a
:拉去所有的tagged镜像--disable-content-trust
:忽略镜像的校验,默认开启
- 示例:
docker pull nginx:1.23.3
3.docker push
- 功能:将本地的镜像上传到镜像仓库,要先登陆到镜像仓库
- 语法:
docker push [OPTIONS] NAME[:TAG]
- 关键参数
-a
:推送所有tagged镜像--disable-content-trust
:忽略镜像的校验,默认开启
- 示例:
docker push SnowKImg:v1
4.docker search
- 功能:从Docker Hub查找镜像
- 语法:
docker search [OPTIONS] TERM
- 关键参数:
- -
-no-trunc
:显示完整的镜像描述 -f <过滤条件>
:列出收藏数不小于指定值的镜像
- -
- 示例:
docker search -f stars=10 nginx
5.docker logout
- 功能:登出一个Docker镜像仓库,如果未指定镜像仓库地址,默认为官方仓库Docker Hub
- 语法:
docker logout [SERVER]
- 示例:
docker logout