[Docker] 在 Mac 上 docker push 時出現 certificate signed by unknown authority?
之前 使用 skopeo 時,出現 failed to verify certificate 錯誤訊息,
結果後來在使用 docker push 時,也出現一樣的錯誤:
$ docker push harbor.test.com/aaa The push refers to repository [harbor.test.com/aaa] Get "https://harbor.test.com/v2/": tls: failed to verify certificate: x509: certificate signed by unknown authority
這該怎麼解呢?
查了一下,在 Mac 上可以如此操作~
1. 取得 Docker registry 的 HTTPS 憑證
執行下面指令,取得 harbor.test.com:443 的 HTTPS 憑證,
並存到 test.pem 檔案裡:
echo -n | openssl s_client -showcerts -connect harbor.test.com:443 2>/dev/null | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > test.pem
2. 將 HTTPS 憑證加到 Mac 的 Keychain
sudo security add-trusted-cert -d -r trustRoot -k /Library/Keychains/System.keychain test.pem
3. 重啟 Docker Desktop for Mac
這邊我是用 UI 的方式將 Docker Desktop Quit 之後,再重新打開~
重開之後,再執行 docker push,已經可以正常執行囉~
$ docker push harbor.test.com/aaa The push refers to repository [harbor.test.com/aaa] e533cbb1bb96: Pushed f4e767328c91: Pushed
參考資料:Mac docker x509: certificate signed by unknown authority
(本頁面已被瀏覽過 96 次)