docker 從私有儲存庫拉取映像檔 沒有 https 解決方式 教學

從私有 Docker Registry 執行 docker pull 拉取 image 時出現下列錯誤:
  
ruyut@ubuntu:~/Downloads$ docker pull 192.168.0.100:5000/ly_oracle:d20220124_2
Error response from daemon: Get "https://192.168.0.100:5000/v2/": http: server gave HTTP response to HTTPS client


原因是因為自建的 Docker Registry 沒有 https,被判斷為不安全
把 Docker Registry IP 和 port 加入到許可清單後重新啟動 Docker 就可以了

格式如下(記得替換為自己的 Docker Registry Ip 和 Port):
  
{
    "insecure-registries": [
        "192.168.0.100:5000"
    ]
}


Linux daemon.json 檔案路徑:
  
/etc/docker/daemon.json


Linux 重啟 Docker:
  
sudo service docker restart


Linux 不重啟 Docker 直接重新讀取設定檔的方式:
  
sudo systemctl reload docker


Windows daemon.json 檔案路徑:
  
%userprofile%\.docker\daemon.json


Windows 重啟 Docker:
在工具列中的 Docker Desktop 應用程式按下 右鍵 > Exit,然後重新開啟 Docker Desktop 應用程式

如果檔案不存在的話需要手動建立
另外 Windows 可以在 Docker Desktop 應用程式內的 Settings > Docker Engine 裡面直接編輯

(2024-12-09 更新)

留言