在安裝好Docker以后,想從公司搭建的私服Harbor上docker pull的時候碰上了x509問題,這個問題的原因是docker會驗證網站的證書,私服沒有相應的證書所以docker拒絕訪問,但是我們也可以自己允許docker連接“不安全”的網站,在此記錄一下解決方案:
環境:Ubuntu 16.04, Docker CE 18.09
修改或新建配置文件:
1
|
sudo vim /etc/default/docker |
輸入i切換到編輯模式,輸入 DOCKER_OPTS="--insecure-registry 127.0.0.1" (把127.0.0.1換成你需要允許的網址,如果有端口號需要加上端口號如127.0.0.1:8080 ), :wq保存并退出:
1
|
DOCKER_OPTS= "--insecure-registry 127.0.0.1" |
編輯docker service 配置文件:
1
|
sudo vim /lib/systemd/system/docker .service |
在命令模式:/ExecStart,找到ExecStart, 我默認的ExecStart長這樣: ExecStart=/usr/bin/dockerd -H unix://
添加EnvironmentFile(注意文件路徑名之前有一個“-”, 推薦直接復制我的配置 )并修改ExecStart,保存并退出:
1
2
|
EnvironmentFile=- /etc/default/docker ExecStart= /usr/bin/dockerd -H unix: // $DOCKER_OPTS |
刷新service配置并重啟docker:
1
2
|
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
以上為個人經驗,希望能給大家一個參考,也希望大家多多支持服務器之家。如有錯誤或未考慮完全的地方,望不吝賜教。
原文鏈接:https://blog.csdn.net/u014628771/article/details/84589151