1、修改daemon.json
vim /etc/docker/daemon.json
沒有則創建文件
添加insecure-registries
{ "registry-mirrors": [ "https://registry.docker-cn.com" ], "insecure-registries": [ "ip" ], "log-driver": "json-file", "log-opts": { "max-size": "100m", "max-file": "5" } }
2、生成秘鑰文件
mkdir -p /etc/docker/certs.d/ip cd /etc/docker/certs.d/ip openssl req -newkey rsa:4096 -nodes -sha256 -keyout xxx.key -x509 -days 3650 -out xxx.cre
3、重啟docker並且登錄
sudo service docker restart sudo docker login ip -u 用戶名 -p 密碼
4、拉取鏡像
docker pull ip/鏡像
常見問題及解決方式
一、如果docker login出現Error response from daemon: Get https://ip/v2/: Get https://xxx/service/token?account=harbor&client_id=docker&offline_token=true&service=harbor-registry: dial tcp: lookup xxx: no such host錯誤
執行如下命令修改hosts:
vim /etc/hosts
增加如下配置
ip xxx
二、如果出現WARNING! Using --password via the CLI is insecure. Use --password-stdin.
Error saving credentials: error storing credentials - err: exit status 1, out: `Error calling StartServiceByName for org.freedesktop.secrets: Timeout was reached`
造成原因:是Ubuntu軟件包的一個錯誤。
解決方法:
sudo apt-get remove golang-docker-credential-helpers