企业级Docker私有仓库部署(https)

部署环境

  • Centos7.3 x64
  • docker-ce-17.06.0
  • docker-compose-1.15.0
  • Python-2.7.5(系统默认)

部署目标

  • 使用HTTPS协议
  • 支持Clair(在Harbor1.2版本会支持)
支持HTTPS

生产环境最好由权威CA机构签发证书(免费的推荐StartSSL),这里为了测试方便使用自签发的证书

  • 创建CA证书
openssl req -newkey rsa:4096 -nodes -sha256 -keyout ca.key -x509 -days 365 -out ca.crt
  • 生成CSR公钥
openssl req -newkey rsa:4096 -nodes -sha256 -keyout hub.wow.key -out hub.wow.csr
  • 颁发证书
openssl x509 -req -days 365 -in hub.wow.csr -CA ca.crt -CAkey ca.key -CAcreateserial -out hub.wow.crt
  • 部署证书
cp hub.wow.crt hub.wow.key /data/harbor/keys/
vim /data/harbor/harbor.cfg
hostname = hub.wow
ui_url_protocol = https
ssl_cert = /data/harbor/keys/hub.wow.crt
ssl_cert_key = /data/harbor/keys/hub.wow.key
 
cd /data/harbor
./prepare 重新生成配置文件
docker-compose down
docker-compose up
  • 通过HTTPS访问私有仓库
WebUI: https://how.wow
Docker Client:
 
[root@hub ~]# docker login -u admin -p Harbor12345 hub.wow
Login Succeeded

问题

docker login时提示x509: certificate signed by unknown authority 解决方法: 自签名的证书不被系统信任,需要cp ca.crt /etc/docker/certs.d/hub.wow/, 无需重启docker

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Flutter&Dart

DartVM服务器开发(第二十天)--jaguar配置HTTPS

我们可以在项目里面的bin文件夹下面创建一个文件夹叫做ssl 分别将上面生成的秘钥跟证书放到这个文件夹下面

871
来自专栏腾讯云数据库团队的专栏

SQL Server 数据加密功能解析

通常来讲,数据加密分为对称加密和非对称加密。SQL Server 就使用了折中的方法,所以SQL Server 加密功能包含2个部分:数据加密和密钥管理。本文将...

2.4K1
来自专栏Pulsar-V

原 前后端密钥分配验证

1416
来自专栏信安之路

SSL_TLS 攻击原理解析

本文主要描述 HTTPS 中对于 ssl/tls 加密的攻击手法,什么是 HTTPS 呢?百度百科的解释如下:

1590
来自专栏滕先生的博客

聊聊 iOS 中的网络加密介绍下介绍下HTTPS交互原理介绍下我们需要做什么

2807
来自专栏我的小碗汤

https原理以及golang基本实现

大致上分为两类,基于key的加密算法与不基于key的加密算法。现在的算法基本都是基于key的,key就以一串随机数数,更换了key之后,算法还可以继续使用。

1363
来自专栏Android开发实战

Android之Https初识

如果读者对上面任何一个名词陌生,请参考这篇文章: https://foofish.net/https-story-1.html

862
来自专栏Java学习网

分析学习HTTPS和HTTP的区别

分析学习HTTPS和HTTP的区别  首先谈谈什么是HTTPS:   HTTPS(Secure Hypertext Transfer Protocol)安全超...

24010
来自专栏老马寒门IT

JS 的加密库简介

作为前端,数据提交到后台之前,重要的数据要进行加密一下,虽然已经有 https 等技术,但是增加一道前端的加密还是相对更安全的。虽然,前端的加密很容破解,但是有...

2030

获得具有商业签名的TLS证书

如果您打算托管一个可公开访问的使用HTTPS的网站,那么您将需要安装一个具有商业签名的TLS证书,这样访问您网站的人就不会在浏览器中收到有关不安全连接的警告。

953

扫码关注云+社区