[Mac] 使用 skopeo 時操作自建的 docker registry 時,出現 failed to verify certificate 錯誤訊息?
之前使用 skopeo 將遠端 docker registry 映像檔複製到另一個 registry,
不過今天在 Mac 上想要拿它來複製映像檔,
到一個自建的 registry 時,發生了問題,
看起來是因為那個 registry 用的是 self-signed certificate,所以系統認不得:
$ skopeo copy --override-os linux docker://aaa.registry.com/web:1.1.1369 docker://bbb.registry.com/web:1.1.1369 Getting image source signatures FATA[0004] trying to reuse blob sha256:1b7ca... at destination: pinging container registry bbb.registry.com: Get "https://bbb.registry.com/v2/": tls: failed to verify certificate: x509: “cert” certificate is not standards compliant
想要登入 registry 也一樣會有問題:
$ skopeo login bbb.registry.com Username: admin Password: FATA[0024] authenticating creds for "bbb.registry.com": pinging container registry bbb.registry.com: Get "https://bbb.registry.com/v2/": tls: failed to verify certificate: x509: “cert” certificate is not standards compliant
查了一下,原來 skopeo 有參數可以直接忽略 TLS 驗證的部分~
在 skopeo login
時加上 --tls-verify=false
就可以登入成功了:
$ skopeo login bbb.registry.com --tls-verify=false Username: admin Password: Login Succeeded!
同理,在 skopeo copy
時加上 --dest-tls-verify=false
,
就可以忽略目的端 registry 的憑證:
$ skopeo copy --override-os linux docker://aaa.registry.com/web:1.1.1369 docker://bbb.registry.com/web:1.1.1369 --dest-tls-verify=false Getting image source signatures ...... Writing manifest to image destination
這樣子就可以使用 skopeo 操作自建的 docker registry 囉~
參考資料:Does skopeo support local docker registry?
(本頁面已被瀏覽過 41 次)