简介:我们可以把自己的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/www.waterlufei.xyz/cert1.pem /home/certs/docker.mydomain.com.crt
         cp /etc/letsencrypt/archive/www.waterlufei.xyz/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

docker使用Let’s Encrypt协议构建免费https协议的更多相关文章

  1. 新开源HTML5单文件网页版ACME客户端,可在线申请Let's Encrypt、ZeroSSL免费HTTPS多域名通配符泛域名SSL/TLS证书(RSA/ECC/ECDSA)

    目录 开源项目的起源 项目地址 使用方法 第一步:选择Let's Encrypt.ZeroSSL或其他证书颁发机构 第二步:证书配置,填写域名 第三步:完成域名所有权的验证 第四步:下载保存证书PEM ...

  2. ubuntu+let's encrypt生成永久免费https证书 ubuntu+tomcat+nginx+let's encrypt

    1. 下载let's encrypt $ sudo add-apt-repository ppa:certbot/certbot $ sudo apt-get update $ sudo apt-ge ...

  3. IIS网站 由http协议改变为https协议

    https://www.cnblogs.com/boosasliulin/p/6811231.html?utm_source=itdadao&utm_medium=referral

  4. 教你快速撸一个免费HTTPS证书

    摘要: 免费 HTTPS 证书,了解一下? HTTPS 已成为业界标准,这篇博客将教你申请Let's Encrypt的免费 HTTPS 证书. 本文的操作是在 Ubuntu 16.04 下进行,使用 ...

  5. http协议和https协议

    内容: 1.http协议介绍 2.https协议介绍 3.http协议和https协议对比 1.http协议介绍 (1)http协议是什么 1 一个传输协议,协议就是双方都遵守的规范. 2 为什么叫超 ...

  6. 如何将网站升级为HTTPS协议(整理)

    如何将网站升级为HTTPS协议(整理) 一.总结 一句话总结: 获取证书(有免费有付费):证书是一个二进制文件,里面包含经过认证的网站公钥和一些元数据,要从经销商购买. 安装证书:证书可以放在/etc ...

  7. http协议与https协议

    1.前言 在介绍 HTTP 协议之前,先简单说一下TCP/IP协议的相关内容.TCP/IP协议是分层的,从底层至应用层分别为:物理层.链路层.网络层.传输层和应用层,如下图所示: 2.http协议简介 ...

  8. 牛客网Java刷题知识点之UDP协议是否支持HTTP和HTTPS协议?为什么?TCP协议支持吗?

    不多说,直接上干货! 福利 => 每天都推送 欢迎大家,关注微信扫码并加入我的4个微信公众号:   大数据躺过的坑      Java从入门到架构师      人工智能躺过的坑          ...

  9. P2P-BT对端管理协议(附BT协议1.0)

    对端管理 指的是远端peer集合的管理(尽管自身client也能够视为一个peer.但对端管理不包括自身peer) 一个client(client)必须维持与每一个远程peer连接的状态信息,即1V1 ...

随机推荐

  1. python - bilibili(一)获取直播间标题

    近几年,直播平台蛮火的.小时候,经过各种日漫的洗礼,在直播平台自然而然的就盯上了B站. 目前还是python菜鸟一枚,各位大佬请轻拍. 最终效果图: 闲话不说,我们来一步步解析B站的弹幕. 工具:py ...

  2. 《半吊子全栈系列:Boostrap3》

    前言:后端开发做网站 几年前,作为一名纯粹后端Java开发人员,对JS还没开窍,对于页面只停留在<十天学会DIV+CSS>这种程度,但是我又想做网站怎么办? 这时候Boostrap3出现了 ...

  3. Java String类和Object类

    String类: 方法: 1.charAt(int index):取index下标的char类型值 2.endsWith(String prefix) /startsWith(String prefi ...

  4. leetcode-1006 Construct Binary Tree from Inorder and Postorder Traversal

    Given inorder and postorder traversal of a tree, construct the binary tree. Note:You may assume that ...

  5. 文件读写监控(inotify, systemtap)

    一.inotify      inotify是内核的一个特性,可以用来监控目录.文件的读写等事件,当监控目标是目录时,inotify除了会监控目录本身,还会监控目录中的文件.inotify的监控功能由 ...

  6. 复制vmware中的centos后无法上网问题

    复制vmware中的centos后无法上网问题 查看IP命令 ip addr 网卡信息 eth1: mtu 1500 qdisc pfifo_fast state UP qlen 1000 使用的是e ...

  7. U3d keyCode值对应的按键

    值        对应键 Backspace     退格键 Delete      Delete键 Tab        TabTab键 Clear  Clear键 Return  回车键 Paus ...

  8. 规范 : 过程 : login cookies sessionTimeOut

    规范 用户登入网站将得到一个cookies,如果用户有2个account,各别登入admin page 和 client page,是会得到2个cookies. 在reload page时,后台会得到 ...

  9. 每天一个linux命令(37)--iostat命令

    Linux 系统中的iostat是I/O statistics (输入/输出统计)的缩写,iostat工具将对系统的磁盘操作活动进行监视.它的特点是汇报磁盘活动统计情况,同时也会汇报出CPU使用情况. ...

  10. 定制Maven的ArcheType

    根据需要定制Maven的ArcheType的好处不言而喻了,我就不再啰嗦.定制一般通过从Maven的项目构建,比手动构建省去了配置文件的编写.资源文件的复制等繁琐的操作,下面我们就说下从Maven项目 ...