使用Docker企业版搭建自己的私有注册服务器

编译自: https://blog.docker.com/2018/01/dtr/译者: fuowangDocker 真的很酷,特别是和使用虚拟机相比,转移 D

大家好,今天小编来为大家解答以下的问题,关于使用Docker企业版搭建自己的私有注册服务器,这个很多人还不知道,现在让我们一起来看看吧!

译者:福王

Docker 真的很酷,尤其是与使用虚拟机相比,移动Docker 镜像是多么容易。如果您准备好使用Docker,那么您无疑已经从Docker Hub 中提取了完整的映像。 Docker Hub 是Docker 的云注册服务器服务,其中包含数千个Docker 镜像可供选择。如果您开发自己的软件包并创建自己的Docker 映像,您将希望拥有自己的私有注册表服务器。如果您拥有带有专有许可证的映像,或者想要为您的构建系统提供复杂的持续集成(CI) 流程,您应该拥有自己的私有注册服务器。

Docker 企业版包括Docker 可信注册表(DTR)。这是一个高度可用的注册表服务器,具有安全的映像管理功能,专为在您自己的数据中心或基于云的架构上运行而构建。接下来,我们将了解DTR 是提供安全、可重用和连续的软件供应链的关键组件。您可以立即开始使用我们的免费托管演示,或下载并安装30 天免费试用版。以下是开始您自己的安装的步骤。

配置 Docker 企业版

DTR 在通用控制面板(UCP) 上运行,因此您需要在开始之前安装单节点集群。如果您已经拥有自己的UCP集群,则可以跳过此步骤。在您的docker 托管主机上,运行以下命令:

# 拉取并安装UCP

docker run -it -rm -v /var/run/docker.sock:/var/run/docker.sock -name ucp docker/ucp:最新安装

UCP 启动并运行后,在安装DTR 之前您需要执行一些操作。打开刚刚安装的UCP 实例的浏览器。日志输出的末尾应该有一个链接。如果您已有Docker Enterprise 许可证,请在此屏幕上输入。如果您还没有,您可以访问Docker 商店以获得30 天的免费试用。

准备好许可证后,您可能想要更改UCP 运行的端口。由于这是单节点集群,DTR 和UCP 可以在同一端口上运行其Web 服务。如果您的UCP 集群具有多个节点,那么这不是问题,因为DTR 将查找具有所需空闲端口的节点。在UCP中,点击“管理员设置-集群配置”,修改控制器端口,如5443。

安装 DTR

我们将安装一个简单的单节点DTR 实例。如果您安装DTR用于实际生产使用,那么您将其设置为高可用性(HA)模式,这需要其他存储介质,例如基于云的对象存储或NFS(LCTT翻译:网络文件系统,网络文件系统)系统)。由于当前安装的是单节点实例,所以我们仍然使用默认的本地存储。

首先我们需要拉取DTR 的引导映像。 boostrap 映像是一个小型独立安装程序,其中包括连接到UCP 以及设置和启动DTR 所需的所有容器、卷和逻辑网络。

使用Docker企业版搭建自己的私有注册服务器

使用命令:

# 拉取并运行DTR 引导加载程序

docker run -it -rm docker/dtr:latest install -ucp-insecure-tls

注意:默认情况下,UCP 和DTR 有自己的证书,系统无法识别这些证书。如果您已使用系统信任的TLS 证书设置UCP,则可以省略-ucp-insecure-tls 选项。或者,您可以使用-ucp-ca 选项直接指定UCP 的CA 证书。

然后,DTR 引导映像将要求您确定一些设置,例如UCP 安装的URL 地址以及管理员用户名和密码。从提取所有DTR 映像到设置所有内容只需一到两分钟。

保证一切安全

一切准备就绪后,您可以将映像推送到注册服务器或从注册服务器拉取映像。在此之前,让我们设置一个TLS 证书以与DTR 安全通信。

在Linux上,我们可以使用以下命令(只需确保更改DTR_HOSTNAME变量以正确映射我们刚刚设置的DTR):

# 从DTR中拉取CA证书(如果curl不可用,可以使用wget)

DTR_HOSTNAME=DTR 主机名

卷曲-k https://$(DTR_HOSTNAME)/ca $(DTR_HOSTNAME).crt

sudo mkdir /etc/docker/certs.d/$(DTR_HOSTNAME)

使用Docker企业版搭建自己的私有注册服务器

sudo cp $(DTR_HOSTNAME) /etc/docker/certs.d/$(DTR_HOSTNAME)

# 重新启动docker 守护进程(在Ubuntu 14.04 上,使用`sudo service docker restart` 命令)

sudo systemctl 重新启动docker

我们为Mac 和Windows 版本的Docker 安装客户端的方式不同。转到“设置- 守护程序”,然后在“不安全注册服务器”部分中输入您的DTR 主机名。单击“应用”,docker 守护进程在重新启动后应该可以正常工作。

推送和拉取镜像

现在我们需要建立一个仓库来存储图像。这与Docker Hub 略有不同。如果你创建的docker推送仓库不存在,它会自动创建一个。要创建存储库,请在浏览器中打开https://Your DTR 主机名,并在出现提示时使用管理员凭据登录。如果您将许可证添加到UCP,DTR 会自动获取许可证。如果没有,请立即确认上传您的许可证。

进入刚才的网页后,点击“新建仓库”按钮,创建一个新仓库。

我们将创建一个存储Alpine linux 的存储库,因此在名称输入中输入“alpine”,然后单击“保存”(在DTR 2.5 及更高版本中称为“创建”)。

现在我们回到shell界面,输入以下命令:

# 拉取最新版本的Alpine Linux

docker pull alpine:最新

# 登录新的DTR实例

使用Docker企业版搭建自己的私有注册服务器

docker 登录您的DTR 主机名

# 标记Alpine 以启用将其推送到您的DTR

docker tag alpine:latest 您的DTR 主机名/admin/alpine:latest

# 将镜像推送到DTR

docker push 您的DTR 主机名/admin/alpine:latest

就是这样!我们刚刚推送了最新Alpine Linux 的副本,重新标记它以存储在DTR 中,并将其推送到我们的私人注册服务器。如果要将映像拉取到不同的Docker 引擎,请按如上所示设置DTR 证书,然后执行以下命令:

# 从DTR中拉取镜像

docker pull 您的DTR 主机名/admin/alpine:latest

DTR拥有许多优秀的图像管理功能,例如图像缓存、成像、扫描、签名甚至自动化供应链策略。我们将在后面的博客文章中更详细地探讨这些功能。

用户评论

使用Docker企业版搭建自己的私有注册服务器
长裙绿衣

终于不用再纠结镜像源的问题了,用Docker Enterprise Edition搭建一台私有注册服务器真是太棒了!安全性大大提高,而且速度也明显快了不少,这下团队成员可以更自由地开发使用了~

    有19位网友表示赞同!

使用Docker企业版搭建自己的私有注册服务器
病态的妖孽

学习了一天,发现Docker Enterprise Edition搭建私有注册服务器确实不简单啊,配置流程复杂,需要对docker的底层机制有一定的了解。对于新手来说确实有点难度,希望能看到一些更详细的教程!

    有8位网友表示赞同!

使用Docker企业版搭建自己的私有注册服务器
你的眸中有星辰

最近公司的内网镜像一直出问题,速度慢得让人抓狂,尝试了Docker Enterprise Edition搭建私有注册服务器之后,发现效果立竿见影!

    有11位网友表示赞同!

使用Docker企业版搭建自己的私有注册服务器
情字何解ヘ

私有注册服务器能更好地控制和管理镜像,而且还可以本地缓存镜像,提高下载速度。对于大型企业来说确实是一大利器,减少安全风险的同时也能优化部署效率。

    有14位网友表示赞同!

使用Docker企业版搭建自己的私有注册服务器
陌上蔷薇

感觉这篇文章有点过于基础了,并没有深入讲解 Docker Enterprise Edition 的一些高级功能,比如内容安全策略和身份验证管理等,希望能看到更全面的解读。

    有5位网友表示赞同!

使用Docker企业版搭建自己的私有注册服务器
龙卷风卷走爱情

之前一直在用阿里云的镜像仓库,但最近因为部分私有库的问题,开始想学习Docker Enterprise Edition搭建自己的私有注册服务器,这篇博文给了我很大的启发!

    有6位网友表示赞同!

使用Docker企业版搭建自己的私有注册服务器
相知相惜

这种搭建私有注册服务器的方法真的值得推荐,尤其是对于需要管理大量自定义镜像的公司来说,可以最大程度地控制镜像版本和安全等级。

    有16位网友表示赞同!

使用Docker企业版搭建自己的私有注册服务器
熏染

虽然Docker Enterprise Edition的功能强大,但是成本也相对较高,如果企业规模比较小,选择开源的解决方案或许更适合。

    有19位网友表示赞同!

使用Docker企业版搭建自己的私有注册服务器
涐们的幸福像流星丶

搭建私有注册服务器确实能提高安全性,但需要定期更新镜像,确保部署最新的版本才能最大程度地保护系统安全。这篇文章没有提到这个细节,希望作者能够补充说明。

    有5位网友表示赞同!

使用Docker企业版搭建自己的私有注册服务器
玩味

对于 Docker 生态系统比较熟悉的开发者来说,学习 Docker Enterprise Edition搭建私有注册服务器应该并不困难,但对新手而言,可能需要一定的学习成本。

    有12位网友表示赞同!

使用Docker企业版搭建自己的私有注册服务器
青墨断笺み

搭建一个完整的私有注册服务器,除了基础配置之外,还需要考虑负载均衡、监控等等,这是一个比较复杂的过程,希望作者能后续分享更多关于此方面的经验!

    有10位网友表示赞同!

使用Docker企业版搭建自己的私有注册服务器
执笔画眉

这个方法可以有效地解决镜像源不可靠的问题,而且对于一些敏感数据也是非常重要的安全保障措施。

    有16位网友表示赞同!

使用Docker企业版搭建自己的私有注册服务器
我一个人

感觉这篇文章写的很不错,通俗易懂,很好理解。对于我们企业内部的研发团队来说,学习 Docker Enterprise Edition搭建私有注册服务器,能提高我们的工作效率!

    有16位网友表示赞同!

使用Docker企业版搭建自己的私有注册服务器
非想

以前没想过要自己搭建私有注册服务器,但我最近对容器技术越来越感兴趣了,这个方法很有启发性!

    有17位网友表示赞同!

使用Docker企业版搭建自己的私有注册服务器
Hello爱情风

想问下作者,搭建好的私有注册服务器可以用docker hub来镜像推送吗?感觉这两个平台可以很好的协作在一起使用。

    有5位网友表示赞同!

使用Docker企业版搭建自己的私有注册服务器
把孤独喂饱

虽然Docker Enterprise Edition的强大功能吸引了我,但其售价确实有点高,对于我们这个刚刚起步的创业公司而言,暂时还是比较困难。

    有6位网友表示赞同!

使用Docker企业版搭建自己的私有注册服务器
暖瞳

搭建私有注册服务器是一个不错的思路,因为它能够更好的管理和控制镜像源,提高系统的安全性。我会关注后续关于 Docker Enterprise Edition 的相关内容,期待学习更多知识!

    有11位网友表示赞同!

原创文章,作者:小su,如若转载,请注明出处:https://www.sudun.com/ask/160635.html

(0)
小su的头像小su
上一篇 2小时前
下一篇 1小时前

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注