首页 > 编程语言 > 解决Docker x509 insecure registry的问题
2021
03-30

解决Docker x509 insecure registry的问题

在安装好Docker以后,想从公司搭建的私服Harbor上docker pull的时候碰上了x509问题,这个问题的原因是docker会验证网站的证书,私服没有相应的证书所以docker拒绝访问,但是我们也可以自己允许docker连接“不安全”的网站,在此记录一下解决方案:

环境:Ubuntu 16.04, Docker CE 18.09

修改或新建配置文件:

sudo vim /etc/default/docker 

输入i切换到编辑模式,输入 DOCKER_OPTS="--insecure-registry 127.0.0.1" (把127.0.0.1换成你需要允许的网址,如果有端口号需要加上端口号如127.0.0.1:8080 ), :wq保存并退出:

DOCKER_OPTS="--insecure-registry 127.0.0.1"

编辑docker service 配置文件:

sudo vim /lib/systemd/system/docker.service

在命令模式:/ExecStart,找到ExecStart, 我默认的ExecStart长这样: ExecStart=/usr/bin/dockerd -H unix://

添加EnvironmentFile(注意文件路径名之前有一个“-”, 推荐直接复制我的配置 )并修改ExecStart,保存并退出:

EnvironmentFile=-/etc/default/docker
ExecStart=/usr/bin/dockerd -H unix:// $DOCKER_OPTS

刷新service配置并重启docker:

systemctl daemon-reload
service docker restart

之后docker pull就可以正常使用了。

补充:docker 1.13.1 版本 添加--insecure-registry

分三步(添加红框中的内容:ip要改的哦)

1、vi /etc/sysconfig/docker

2、 vi /usr/lib/systemd/system/docker.service

3、vi /etc/docker/daemon.json

以上为个人经验,希望能给大家一个参考,也希望大家多多支持自学编程网。如有错误或未考虑完全的地方,望不吝赐教。

编程技巧