containerd:配置https私有镜像仓库的最新方法

随着containerd应用越来越广泛,我们必须紧跟官网的节奏。

之前配置https私有镜像仓库的方法比较繁琐,并且不易梳理,下边介绍一下目前最新的配置方法。

配置https私有镜像仓库

我假设你现在已经有私有仓库并且是https

再假设你的harbor域名是harbor.example.cn

你只需要在/etc/containerd/config.toml中配置一下证书的路径:

bash 复制代码
...
    [plugins."io.containerd.grpc.v1.cri".registry]
      config_path = "/etc/containerd/certs.d"
...

然后创建对应的目录及文件

bash 复制代码
mkdir -p /etc/containerd/certs.d/harbor.example.cn

cat > hosts.toml << EOF
server = "https://harbor.example.cn"

[host."https://harbor.example.cn"]
  capabilities = ["pull", "resolve", "push"]
  skip_verify = true
EOF

skip_verify = true 表示跳过TLS的验证,如果想要更安全一些就将它修改为false,上传证书并指定路径

bash 复制代码
[root@anilis-k8s-03 harbor.example.cn]# ls
ca.crt  harbor.example.cn.crt  harbor.example.cn.key

修改配置:

bash 复制代码
cat > hosts.toml << EOF
server = "https://harbor.example.cn"

[host."https://harbor.example.cn"]
  capabilities = ["pull", "resolve", "push"]
  skip_verify = false
  ca = "ca.crt"
EOF

最后重启containerd

bash 复制代码
systemctl restart containerd.service

再次拉取镜像,都可以正常访问了!

如果你还有其他域名需要加,那就创建对应的目录就可以了!

参考官网

containerd:
https://github.com/containerd/containerd/blob/main/docs/cri/config.md
https://github.com/containerd/containerd/blob/main/docs/hosts.md

harbor自签证书:
https://goharbor.io/docs/2.11.0/install-config/configure-https/

相关推荐
胡八一4 天前
解决/var/lib/docker(默认的 Docker 数据目录)占用较大,并且所在磁盘空间不足
docker·harbor
warrah5 天前
生产环境迁移——harbor篇
harbor
Echo flower10 天前
jenkins harbor安装
云原生·harbor
听说唐僧不吃肉18 天前
一文了解containerd与docker的区别
docker·containerd
秋意零25 天前
Harbor安装、HTTPS配置、修改端口后不可访问?
运维·云计算·harbor·harbor相关
树下一少年25 天前
k8s运行运行pod报错超出文件描述符表限制
linux·容器·kubernetes·containerd·limit.conf
lwprain1 个月前
安装支持ssl的harbor 2.1.4 docker 19.03.8 docker-compose 1.24.0
网络协议·ssl·harbor
lu云之东1 个月前
Harbor2.11.1生成自签证和配置HTTPS访问
网络协议·http·docker·https·harbor
SilentCodeY2 个月前
containerd配置私有仓库registry
容器·kubernetes·containerd·镜像·crictl
知本知至2 个月前
arm架构部署nexus配置ssl&containerd
arm开发·架构·containerd·nexus