containerd 配置私有镜像仓库push镜像

containerd 配置私有镜像仓库

前言:
containerd需要测试push私有镜像仓库。但是由于之前pull国内镜像,配置mirror源等操作。导致config.toml文件修改的次数过多。最终在配置私有仓库后无论如何都无法push成功http: server gave HTTP response to HTTPS client走的一直是https。即使在config.toml中已经修改[plugins."io.containerd.grpc.v1.cri".registry.mirrors."10.106.xx.xx:5000"]任然报错。在使用docker push成功跟nerdctl pull镜像成功后,才发现可能和config.toml本身有关系。所以,尽量不要在config.toml中修改,以下为修复方法。
error stack:

root@ubuntu:/home/ubuntu# nerdctl push 10.106.xx.x:5000/nginx:zxc
INFO[0000] pushing as a reduced-platform image (application/vnd.docker.distribution.manifest.v2+json, sha256:9a40f244caca53fbb7596f0fc9126e3203e657ae386aa8e202e81e86f8dccfd8) 
WARN[0000] skipping verifying HTTPS certs for "10.106.xx.x:5000" 
manifest-sha256:9a40f244caca53fbb7596f0fc9126e3203e657ae386aa8e202e81e86f8dccfd8: waiting        |--------------------------------------| 
config-sha256:009adb0f7920fd22ce0dcf4625b7b2225f6874b7906185610966c1435d159b4e:   waiting        |--------------------------------------| 
layer-sha256:ac6ca7a1ad1e711056f97b1bb7cafca507fb5bb30094643679837ccc3b454095:    waiting        |--------------------------------------| 
layer-sha256:3da95a905ed546f99c4564407923a681757d89651a388ec3f1f5e9bf5ed0b39d:    waiting        |--------------------------------------| 
layer-sha256:ce7132063a5679c245d63b972b414a24de1686b42f8231c8df6f703c50a5ac38:    waiting        |--------------------------------------| 
layer-sha256:23e05839d684c6d82bd5fd45968bb8997da3a639f1fe8ca502a4edbcffa8655d:    waiting        |--------------------------------------| 
layer-sha256:9bbbd7ee45b78c411208ea69e41a52a06a7e3872dfd0235e79bbb637e4789c1d:    waiting        |--------------------------------------| 
layer-sha256:ee95256df0301df55618ec5c24f6bf41b6d005d3026e0e67e95fef0b0fbc2691:    waiting        |--------------------------------------| 
layer-sha256:6c8e51cf00871b029c189d3e2145e2307bbba361bb62e20b696c18b2e8cd2f52:    waiting        |--------------------------------------| 
layer-sha256:48670a58a68fc689138b916491d7c5aa6ea6fb2e4227a7edef275ec7003c9569:    waiting        |--------------------------------------| 
layer-sha256:8b8a47100e1ad69b77ee786f64646c99d6ee73140cde13c61352d2845f6e0490:    waiting        |--------------------------------------| 
elapsed: 0.1 s                                                                    total:   0.0 B (0.0 B/s)                                         
WARN[0000] server "10.106.xx.x:5000" does not seem to support HTTPS, falling back to plain HTTP  error="failed to do request: Head \"https://10.106.xx.x:5000/v2/nginx/blobs/sha256:009adb0f7920fd22ce0dcf4625b7b2225f6874b7906185610966c1435d159b4e\": http: server gave HTTP response to HTTPS client"
manifest-sha256:9a40f244caca53fbb7596f0fc9126e3203e657ae386aa8e202e81e86f8dccfd8: waiting        |--------------------------------------| 
layer-sha256:ac6ca7a1ad1e711056f97b1bb7cafca507fb5bb30094643679837ccc3b454095:    waiting        |--------------------------------------| 
layer-sha256:48670a58a68fc689138b916491d7c5aa6ea6fb2e4227a7edef275ec7003c9569:    waiting        |--------------------------------------| 
config-sha256:009adb0f7920fd22ce0dcf4625b7b2225f6874b7906185610966c1435d159b4e:   waiting        |--------------------------------------| 
layer-sha256:ce7132063a5679c245d63b972b414a24de1686b42f8231c8df6f703c50a5ac38:    waiting        |--------------------------------------| 
layer-sha256:3da95a905ed546f99c4564407923a681757d89651a388ec3f1f5e9bf5ed0b39d:    waiting        |--------------------------------------| 
layer-sha256:6c8e51cf00871b029c189d3e2145e2307bbba361bb62e20b696c18b2e8cd2f52:    waiting        |--------------------------------------| 
layer-sha256:ee95256df0301df55618ec5c24f6bf41b6d005d3026e0e67e95fef0b0fbc2691:    waiting        |--------------------------------------| 
layer-sha256:23e05839d684c6d82bd5fd45968bb8997da3a639f1fe8ca502a4edbcffa8655d:    waiting        |--------------------------------------| 
layer-sha256:9bbbd7ee45b78c411208ea69e41a52a06a7e3872dfd0235e79bbb637e4789c1d:    waiting        |--------------------------------------| 
layer-sha256:8b8a47100e1ad69b77ee786f64646c99d6ee73140cde13c61352d2845f6e0490:    waiting        |--------------------------------------| 
elapsed: 0.1 s                                                                    total:   0.0 B (0.0 B/s)    
  1. 重置config.toml
cp /etc/containerd/config.toml /etc/containerd/config.toml.bak
containerd config default > /etc/containerd/config.toml
  1. 添加certs.d下的host.toml文件,强制使用http
sudo mkdir -p /etc/containerd/certs.d/10.106. xx.x:5000
sudo tee /etc/containerd/certs.d/10.106. xx.x:5000/hosts.toml > /dev/null <<EOF
server = "http://10.106. xx.x:5000"
EOF
  1. 重启containerd
sudo systemctl restart containerd

  1. push 镜像
root@ubuntu:/home/ubuntu# nerdctl --insecure-registry push 10.106.xx.x:5000/nginx:zxc
INFO[0000] pushing as a reduced-platform image (application/vnd.docker.distribution.manifest.v2+json, sha256:9a40f244caca53fbb7596f0fc9126e3203e657ae386aa8e202e81e86f8dccfd8) 
WARN[0000] skipping verifying HTTPS certs for "10.106.xx.x:5000" 
INFO[0000] host will try HTTPS first since it is configured for HTTP with a TLS configuration, consider changing host to HTTPS or removing unused TLS configuration  host="10.106.xx.x:5000"
manifest-sha256:9a40f244caca53fbb7596f0fc9126e3203e657ae386aa8e202e81e86f8dccfd8: done           |++++++++++++++++++++++++++++++++++++++| 
layer-sha256:ac6ca7a1ad1e711056f97b1bb7cafca507fb5bb30094643679837ccc3b454095:    done           |++++++++++++++++++++++++++++++++++++++| 
config-sha256:009adb0f7920fd22ce0dcf4625b7b2225f6874b7906185610966c1435d159b4e:   done           |++++++++++++++++++++++++++++++++++++++| 
layer-sha256:3da95a905ed546f99c4564407923a681757d89651a388ec3f1f5e9bf5ed0b39d:    done           |++++++++++++++++++++++++++++++++++++++| 
layer-sha256:6c8e51cf00871b029c189d3e2145e2307bbba361bb62e20b696c18b2e8cd2f52:    done           |++++++++++++++++++++++++++++++++++++++| 
layer-sha256:9bbbd7ee45b78c411208ea69e41a52a06a7e3872dfd0235e79bbb637e4789c1d:    done           |++++++++++++++++++++++++++++++++++++++| 
layer-sha256:48670a58a68fc689138b916491d7c5aa6ea6fb2e4227a7edef275ec7003c9569:    done           |++++++++++++++++++++++++++++++++++++++| 
layer-sha256:ce7132063a5679c245d63b972b414a24de1686b42f8231c8df6f703c50a5ac38:    done           |++++++++++++++++++++++++++++++++++++++| 
layer-sha256:23e05839d684c6d82bd5fd45968bb8997da3a639f1fe8ca502a4edbcffa8655d:    done           |++++++++++++++++++++++++++++++++++++++| 
layer-sha256:ee95256df0301df55618ec5c24f6bf41b6d005d3026e0e67e95fef0b0fbc2691:    done           |++++++++++++++++++++++++++++++++++++++| 
layer-sha256:8b8a47100e1ad69b77ee786f64646c99d6ee73140cde13c61352d2845f6e0490:    done           |++++++++++++++++++++++++++++++++++++++| 
elapsed: 0.1 s                                                                    total:   0.0 B (0.0 B/s)     
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值