[英]Unable to login to private docker registry from Jenkins
我正在嘗試使用Jenkins來構建docker鏡像並將其推送到私有注冊表。 但是,在嘗試docker login
命令時,出現此錯誤:
http: server gave HTTP response to HTTPS client
我知道這可能正在發生,因為未將私有注冊表添加為不安全的注冊表。 但是,如何在CI管道中解決此問題?
Jenkins是在Kubernetes集群上設置的,我正在嘗試自動在集群上部署應用程序。
這與Jenkins CI管道或Kubernetes無關。 Jenkins將無法推送您的圖像,直到按照以下任一步驟進行配置
您有兩個選擇
1)配置您的Docker客戶端以通過HTTPS使用安全注冊表。 這將包括設置自簽名證書或從您本地的證書頒發機構獲取證書。
2)第二種解決方案是通過未加密的HTTP連接使用注冊表。 因此,如果您在kubernetes上運行docker。 您將必須在/etc/docker/daemon.json
配置daemon.json
文件。
PS:此文件可能不存在。 您將不得不創建它。
然后添加以下內容。 確保您更改URL以匹配您的Docker注冊表
{
"insecure-registries" : ["myregistrydomain.com:5000"]
}
然后使用systemctl restart docker
或etc/init.d/docker restart
具體取決於集群上安裝的linux distro版本
如果您有任何疑問,請告訴我
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.