docker

关注公众号 jb51net

关闭
首页 > 网站技巧 > 服务器 > 云和虚拟化 > docker > docker数据传输加密

docker仓库数据传输加密的问题小结

作者:BLEACH-heiqiyihu

这篇文章主要介绍了docker仓库数据传输加密的问题小结,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧

1.进行加密数据运算对配置文件底下的内容进行删除

[root@localhost ~]# vim /etc/docker/daemon.json 

重新启动docker程序

[root@localhost ~]# systemctl restart docker

2.建立加密目录,生成认证key和证书

[root@localhost ~]# mkdir certs
[root@localhost ~]# openssl req -newkey rsa:4096 -nodes -sha256 \
> -keyout certs/timinglee.org.key \
> -addext "subjectAltName = DNS:reg.timinglee.org" \    #指定备用名称
> -x509 -days 365 -out certs/timinglee.org.crt

目录底下成功生成证书和Key

注意:域名解析创建存在对应的地址reg.timinglee.org

[root@localhost ~]# vim /etc/hosts
172.25.254.200 docker-node1.timinglee.org reg.timinglee.org

3.启动registry仓库

[root@localhost ~]# docker run -d -p 443:443 --restart=always \            #使用加密端口443
> -v /root/certs:/certs \                         # -v将本机的目录(/root/certs)挂载到镜像目录(/certs)中
> -e REGISTRY_HTTP_ADDR=0.0.0.0:443 \                                         #指定http监控的端口
> -e REGISTRY_HTTP_TLS_CERTIFICATE=/certs/timinglee.org.crt \  #指定容器底下证书
> -e REGISTRY_HTTP_TLS_KEY=/certs/timinglee.org.key registry:latest #指定运行的镜像

检测仓库是否启动成功

4.尝试进行镜像推送 会失败

[root@localhost ~]# docker tag nginx:v3 reg.timinglee.org/nginx:v3
[root@localhost ~]# docker push reg.timinglee.org/nginx:v3
The push refers to repository [reg.timinglee.org/nignx]
Get "https://reg.timinglee.org/v2/": dial tcp: lookup reg.timinglee.org on 114.114.114.114:53: no such host

原因是docker客户端没有key和证书

5.为客户端建立证书

[root@localhost ~]# mkdir -p /etc/docker/certs.d/reg.timinglee.org -p
[root@localhost ~]# cp /root/certs/timinglee.org.crt /etc/docker/certs.d/reg.timinglee.org/ca.crt 

查看底下是否存在证书

[root@localhost ~]# systemctl restart docker

6.测试,再次推送nginx:v3

[root@localhost ~]# docker push reg.timinglee.org/nginx:v3

到此这篇关于docker仓库数据传输加密的文章就介绍到这了,更多相关docker数据传输加密内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文