Board logo

标题: 设置一个具有基本 HTTP 身份验证支持的 Docker 私有注册表 [打印本页]

作者: look_w    时间: 2017-12-19 20:21     标题: 设置一个具有基本 HTTP 身份验证支持的 Docker 私有注册表

Docker Registry 是一个支持共享 Docker 镜像的服务器端应用程序。公共注册表托管在 。如果由于公司政策、防火墙限制等而无法访问公共托管注册表,您可以部署私有注册表。注册表代码是开源的,可根据 Apache License 获得。请注意,私有注册表没有像公共托管注册表一样的 Web 用户界面。私有注册表是一个应用程序,会提供注册表 API 供 Docker 引擎处理镜像。
本文将介绍如何在运行 Red Hat Enterprise Linux (RHEL) 7.1 LE Linux 发行版的 OpenPower 服务器上设置一个具有 TLS 和 HTTP 身份验证功能的 Docker 私有注册表(2.x 版)。除了与在 RHEL 上安装注册表程序包相关的指令之外,这些指令也适用于 OpenPower 服务器上运行的其他大部分 Linux 发行版(Ubuntu、Fedora 等)。
可用性您可以在以下地址获取最新的 Docker 注册表(2.x 版)的源代码:。
下表列出了针对 PowerPC LE (ppc64le) 平台的相关包的位置。
Linux 发行版包位置Fedora 23 或更高版本Distro 存储库Ubuntu 16.04Distro 存储库RHEL 7.XUniversity of Campinas ()SLES 12 SPXDistro 存储库
1

将 Docker 私有注册表包安装在 RHEL LE 上

针对 RHEL 7.1 LE 预先编译的 Docker 和 Docker 注册表(2.1 版)的程序包可从 University of Campinas (unicamp) 存储库获得 ()。请注意,这些程序包是按原样提供的。
在其他 Linux 发行版上安装 Docker 私有注册表包的说明
安装您的发行版的对应程序包;无论采用什么样的发行版或服务器,剩余指令都是相同的。
2

配置存储

下载和安装 Docker 注册表包后,您需要为镜像配置存储位置。
3

创建注册表配置文件

以下各小节将介绍如何创建注册表配置文件。
4

启动注册表服务器

使用以下命令行启动注册表服务器:
# REGISTRY_HTTP_TLS_CERTIFICATE=/certs/domain.crt
REGISTRY_HTTP_TLS_KEY=/certs/domain.key screen -dmS registry registry /etc/registry/config.yml




REGISTRY_HTTP_TLS_CERTIFICATE 和 REGISTRY_HTTP_TLS_KEY 也可在注册表配置文件中指定。私有注册表的默认配置文件可在 /etc/registry/config.yml 中找到。关于可用配置选项的细节可在以下位置找到:
以下是一段示例配置:
# cat /etc/registry/config.yml
version: 0.1
storage:
  filesystem:
    rootdirectory: /data/registry_data
  delete:
    enabled: true
http:
  addr: registry.kube.com:5000
  host: https://registry.kube.com:5000
  tls:
      certificate: /certs/domain.crt
      key: /certs/domain.key
auth:
  htpasswd:
    realm: basic-realm
    path: /etc/registry/registry_passwd




运行以下命令来启动注册表服务器:
# screen -dmS registry registry /etc/registry/config.yml




5

验证对注册表服务器的访问

从任何 Docker 主机,确认您可以登录到注册表服务器。使用通过 htpasswd 工具创建的 userid 和密码。
# docker login https://registry.kube.com:5000




您现在已完成设置,可以在您的环境中使用 Docker 私有注册表了。




欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) Powered by Discuz! 7.0.0