docker使用Let’s Encrypt协议构建免费https协议
简介:我们可以把自己的image上传到dockerhub或者阿里云的docker镜像仓库,但在实际使用中我们很多时候都用的是自己的registry,便于内部的共享等等优点,docker镜像默认支持https协议,可以用http协议,但是强烈不推荐,http协议只适合用实验阶段而且不支持设置用户名和密码。http认证是需要钱的对于只想做做实验的同学来说是不可接受的,下面我们介绍下利用Let’s Encrypt构建免费的https协议。
Let’s Encrypt官网:https://letsencrypt.org/
环境:
docker版本:Docker version 17.03.0-ce, build 60ccb22
服务器版本:CentOS Linux release 7.3.1611 (Core)
端口开放:443,80(防火墙开放)
步骤:
1.从该服务器上面获取证书:
$ git clone https://github.com/letsencrypt/letsencrypt.git
$ cd letsencrypt
$ sudo ./letsencrypt-auto certonly
2.根据该向导,选用standalone模式填写自己的邮箱域名等等,最后获取到的证书文件放在/etc/letsencrypt/archive/docker.mydomain.com/。首先备份这些证书到自己电脑上去
3.然后找一个地方存放证书
cp /etc/letsencrypt/archive/mydomain.com/cert1.pem /home/certs/docker.mydomain.com.crt
cp /etc/letsencrypt/archive/mydomain.com/privkey1.pem /home/certs/docker.mydomain.com.key
启动这个证书后在浏览器里面已经可以看到https成功访问了,但是docker支持的不够好,但你push,pull的时候会报错unknow authority,这个时候我们需要继续在Let’s Encrypt官网下载两个证书
wget https://letsencrypt.org/certs/isrgrootx1.pem
wget https://letsencrypt.org/certs/lets-encrypt-x3-cross-signed.pem
下好了以后我们把下面两个证书整合到.crt证书中,最简单的办法就是进入下面两个文件文件直接copy全部内容,然后粘贴到上面的.crt文件中,最后.crt文件有三对begin和end
最后我们启动docker registry:
docker run -d -p 5000:5000 --restart=always --name registry \
-v /opt/data:/var/lib/registry \
-v /home/certs:/certs \
-e REGISTRY_HTTP_TLS_CERTIFICATE=/certs/docker.mydomain.com.crt \
-e REGISTRY_HTTP_TLS_KEY=/certs/docker.mydomain.com.key \
registry:2
我们就可以直接push,pull了例如:push ubuntu docker.mydomain.com:5000/ubuntu
- 使用 Cerbot 部署 Let's Encrypt免费证书 简单 升级 http 到 https 申请单域名ssl证书
- 免费HTTPS证书不是梦!在Ubuntu(Linux)的VPS上使用Let's Encrypt为一堆域名申请并安装HTTPS证书
- 网站http改https Let’s Encrypt 安装 续期教程 免费ssl证书Let’s Encrypt使用教程Certbot
- 全民https时代,Let's Encrypt免费SSL证书的申请及使用(Tomcat版)
- Let's Encrypt 使用教程,免费的SSL证书,让你的网站拥抱 HTTPS
- 使用Let`s encrypt 免费的https 证书
- IIS - 自动申请、部署Let's Encrypt的免费SSL证书(让网站实现HTTPS协议)
- 使用 Let's Encrypt 生成免费SSL证书 Https
- 微信小程序 Tomcat HTTPS Let’s Encrypt免费SSL证书
- 使用Let’s Encrypt轻松配置https站点
- let's Encrypt永久免费证书SSL配置HTTPS
- 部署 使用 acme.sh 给 Nginx 安装 Let’ s Encrypt 提供的免费 SSL 证书
- linux CentOS7 安装使用 Let’ s Encrypt 免费SSL证书完整过程
- Lets Encrypt 最近很火的免费SSL 使用教程
- 如何使用Let's Encrypt永久免费SSL证书
- Tomcat 9 + Let's encrypt 免费 SSL 升级 https
- 利用SSL For Free工具3分钟获取Let's Encrypt免费SSL证书(https免费证书)
- nginx配置https/证书更新/ Let's encrypt免费证书(https)以及错误解决!
- 使用Go和Let's Encrypt证书部署HTTPS
- 网站升级HTTPS,免费SSL证书Let’s Encrypt安装使用教程:Apache和Nginx配置方法