最近新学搭建k8s集群,却一直在报同一个错误(6443refused)❌,后面重装了系统(centos8),安装container(v1.6.37)和runc(1.2.5),应用状态Running,日志正常,但使用ctr拉取镜像时一直报registry.docker.io拒绝连接,已经麻了,各位牛友们能不能支支招啊,过程如下
二进制安装containerd
wget https://github.com/containerd/containerd/releases/download/v1.6.37/containerd-1.6.37-linux-amd64.tar.gz
tar -xvf containerd-1.6.37-linux-amd64.tar.gz bin/
cp bin/* /usr/local/bin/
containerd -v
mkdir /etc/containerd
containerd config default > /etc/containerd/config.toml
修改配置文件vim /etc/containerd/config.toml,修改点如下
config_path = "/etc/containerd/certs.d"
sandbox_image = "registry.aliyuncs.com/google_containers/pause:3.9"
添加镜像加速
server = "https://docker.io"
[host."https://docker.m.daocloud.io"]
capabilities = ["pull", "resolve", "push"]
生成service文件
echo << EOF>> /etc/systemd/system/containerd.service
[Unit]
Description=containerd container runtime
Documentation=https://containerd.io
After=network.target local-fs.target
[Service]
# 预加载 overlay 内核模块(若需)
ExecStartPre=-/usr/sbin/modprobe overlay
# 启动 containerd 主进程
ExecStart=/usr/local/bin/containerd
# 设置进程类型为 notify(通知 Systemd 状态变化)
Type=notify
# 允许容器进程继承主进程的 cgroup
Delegate=yes
KillMode=process
# 强制重启策略
Restart=always
RestartSec=5
# 资源限制(示例值)
LimitNPROC=infinity
LimitCORE=infinity
LimitNOFILE=infinity
# 其他优化参数
TasksMax=infinity
OOMScoreAdjust=-999
[Install]
WantedBy=multi-user.target
EOF
启动containerd服务
```bash
chmod 644 /etc/systemd/system/containerd.service
systemctl daemon-reload && systemctl start containerd && systemctl enable containerd
安装runc
wget https://github.com/opencontainers/runc/releases/download/v1.2.5/runc.amd64
chmod a+x runc.amd64
mv runc.amd64 /usr/bin/runc
拉取镜像报错
[root@master app]# ctr image pull docker.io/library/nginx:alpine
docker.io/library/nginx:alpine: resolving |------------------------------------
elapsed: 20.9s total: 0.0 B (0.0 B/s)
INFO[0021] trying next host error="failed to do request\"https://registry-1.docker.io/v2/library/nginx/manifests/alpine\": dial tcp 108.1605:443: connect: connection refused" host=registry-1.docker.io
ctr: failed to resolve reference "docker.io/library/nginx:alpine": failed to do requad "https://registry-1.docker.io/v2/library/nginx/manifests/alpine": dial tcp 108.1675:443: connect: connection refused