访问仓库

仓库( Repository )是集中存放镜像的地方。注册服务器( Registry )是管理仓库的具体服务器。
每个注册服务器上可以有多个仓库,而每个仓库下面有多个镜像。
从这方面来说,仓库可以被认为是一个具体的项目或目录。
对于仓库地址 dl.dockerpool.com/ubuntu来说, dl.dockerpool.com是注册服务器地址, ubuntu 是仓库名。
大部分时候,并不需要严格区分这两者的概念。

1、Docker Hub

docker查看PGSQL数据库 docker查看仓库_服务器

docker查看PGSQL数据库 docker查看仓库_Docker_02


docker查看PGSQL数据库 docker查看仓库_服务器_03

docker查看PGSQL数据库 docker查看仓库_私有仓库_04

[例子]

以 centos 为关键词进行搜索:

docker查看PGSQL数据库 docker查看仓库_Docker_05


可以看到返回了很多包含关键字的镜像,其中包括镜像名字、描述、收藏数(表示该镜像的受关注程度)、是否官方创建、是否自动创建。官方的镜像说明是官方项目组创建和维护的,automated 资源允许用户验证镜像的来源和内容。

根据官方是否提供,镜像资源分为 基础镜像(根镜像) 和 带有用户名称前缀的镜像 两类。

在查找的时候通过 --filter=stars=N 参数可以指定仅显示收藏数量为 N 以上的镜像。

docker查看PGSQL数据库 docker查看仓库_Docker_06

docker查看PGSQL数据库 docker查看仓库_Docker_07

docker查看PGSQL数据库 docker查看仓库_服务器_08

docker查看PGSQL数据库 docker查看仓库_docker查看PGSQL数据库_09

2、私有仓库

docker查看PGSQL数据库 docker查看仓库_docker_10

docker查看PGSQL数据库 docker查看仓库_服务器_11

docker查看PGSQL数据库 docker查看仓库_私有仓库_12

docker查看PGSQL数据库 docker查看仓库_Docker_13

docker查看PGSQL数据库 docker查看仓库_Docker_14

docker查看PGSQL数据库 docker查看仓库_私有仓库_15

docker查看PGSQL数据库 docker查看仓库_服务器_16


docker查看PGSQL数据库 docker查看仓库_服务器_17


docker查看PGSQL数据库 docker查看仓库_docker查看PGSQL数据库_18

docker查看PGSQL数据库 docker查看仓库_docker_19

对于 Docker for Windows 在设置中编辑 daemon.json 增加字符串

docker查看PGSQL数据库 docker查看仓库_服务器_20

3、私有仓库高级配置

使用 Docker Compose 搭建一个拥有权限认证、TLS 的私有仓库。
准备站点证书

  • 如果拥有一个域名,国内各大云服务商均提供免费的站点证书。
  • 使用 openssl 自行签发证书。

使用openssl自行签发docker.domain.com的站点SSL证书

  • 创建CA私钥
  • docker查看PGSQL数据库 docker查看仓库_docker查看PGSQL数据库_21

  • 利用私钥创建CA根证书请求文件
  • docker查看PGSQL数据库 docker查看仓库_服务器_22

  • 以上命令中 -subj 参数里的 /C 表示国家,如 CN ; /ST 表示省; /L 表示城市或者地区; /O 表示组织名; /CN 通用名称。
  • 配置CA根证书,新建 root-ca.cnf 文件
  • docker查看PGSQL数据库 docker查看仓库_私有仓库_23

  • 签发根证书
  • docker查看PGSQL数据库 docker查看仓库_docker查看PGSQL数据库_24

  • 生成站点SSL私钥
  • docker查看PGSQL数据库 docker查看仓库_私有仓库_25

  • 使用私钥生成证书请求文件
  • docker查看PGSQL数据库 docker查看仓库_docker_26

  • 配置证书,新建 site.cnf 文件
  • docker查看PGSQL数据库 docker查看仓库_docker_27

  • 签署站点SSL证书
  • docker查看PGSQL数据库 docker查看仓库_Docker_28

    docker查看PGSQL数据库 docker查看仓库_服务器_29

    docker查看PGSQL数据库 docker查看仓库_Docker_30

配置私有仓库

3、Nexus3.x的私有仓库

docker查看PGSQL数据库 docker查看仓库_私有仓库_31

  • 启动Nexus容器
docker run -d --name nexus3 --restart=always -p 8081:8081 --mount src=nexus-data,target=/nexus-data sonatype/nexus3

docker查看PGSQL数据库 docker查看仓库_docker查看PGSQL数据库_32

等待 3-5 分钟,如果 nexus3 容器没有异常退出,那么你可以使用浏览器打开http://localhost:8081访问 Nexus 了。

docker查看PGSQL数据库 docker查看仓库_私有仓库_33

第一次启动 Nexus 的默认帐号是 admin 密码是 admin123 登录以后点击页面上方的齿轮按钮进行设置。

  • 创建仓库
  • 添加访问权限
  • NGINX加密代理