容器服务Containerd登录

本文转载来源:

配置登录信息

为确保正确配置,下面提供完整的设置步骤:

  1. 按以下内容追加到 /etc/containerd/config.toml
  2. 将下述 your_usernameyour_password 替换为您的实际账号和密码(毫秒镜像账号为您的手机号)
  3. 保存后执行 sudo systemctl restart containerd 使配置生效
  4. 支持的加速列表请参考:镜像列表,除dockerhub之外,其他加速站点均需登录后使用。
ini 复制代码
[plugins."io.containerd.grpc.v1.cri".registry]
  # 1. 配置镜像加速 mirrors
  [plugins."io.containerd.grpc.v1.cri".registry.mirrors]
    [plugins."io.containerd.grpc.v1.cri".registry.mirrors."docker.io"]
      endpoint = ["https://docker.1ms.run"]
    [plugins."io.containerd.grpc.v1.cri".registry.mirrors."registry.k8s.io"]
      endpoint = ["https://k8s.1ms.run"]
    [plugins."io.containerd.grpc.v1.cri".registry.mirrors."gcr.io"]
      endpoint = ["https://gcr.1ms.run"]
    [plugins."io.containerd.grpc.v1.cri".registry.mirrors."ghcr.io"]
      endpoint = ["https://ghcr.1ms.run"]

  # 2. 配置私有仓库认证(用户名/密码)
  [plugins."io.containerd.grpc.v1.cri".registry.configs]
    # 为每个加速站点单独配置认证
    [plugins."io.containerd.grpc.v1.cri".registry.configs."docker.1ms.run".auth]
      username = "your_username"  # 替换为实际用户名
      password = "your_password"  # 替换为实际密码
    [plugins."io.containerd.grpc.v1.cri".registry.configs."k8s.1ms.run".auth]
      username = "your_username"
      password = "your_password"
    [plugins."io.containerd.grpc.v1.cri".registry.configs."gcr.1ms.run".auth]
      username = "your_username"
      password = "your_password"
    [plugins."io.containerd.grpc.v1.cri".registry.configs."ghcr.1ms.run".auth]
      username = "your_username"
      password = "your_password"

注意:使用crictl等命令行工具调试时可能会提示此配置方式已废弃,您可以忽略该警告,镜像拉取不受影响。

延伸资料

Containerd配置私有镜像仓库(如Harbor)主要有两种方式:修改config.toml文件或使用certs.d目录配置。

详细配置方法如下:

1. 通过 /etc/containerd/config.toml 配置

TLS安全配置(适用于自签名证书或HTTP仓库)
csharp 复制代码
[plugins."io.containerd.grpc.v1.cri".registry.configs."harbor.example.com".tls]
  insecure_skip_verify = true  # 跳过TLS验证
认证信息配置
ini 复制代码
[plugins."io.containerd.grpc.v1.cri".registry.configs."harbor.example.com".auth]
  username = "admin"
  password = "Harbor12345"
镜像仓库地址配置
ini 复制代码
[plugins."io.containerd.grpc.v1.cri".registry.mirrors."harbor.example.com"]
  endpoint = ["https://harbor.example.com"]
  endpoint = ["http://harbor.example.com"] # HTTP仓库需显式配置

2. 使用 /etc/containerd/certs.d/ 目录

以下配置用于 containerd v2版本。

指向 certs.d 目录
ini 复制代码
[plugins."io.containerd.grpc.v1.cri".registry]
  config_path = "/etc/containerd/certs.d"
创建 hosts.toml 文件
ini 复制代码
mkdir -p /etc/containerd/certs.d/harbor.example.com
cat > /etc/containerd/certs.d/harbor.example.com/hosts.toml <<EOF
server = "https://harbor.example.com"

[host."https://harbor.example.com"]
  capabilities = ["pull", "resolve", "push"]
  # 指定自签证书
  # ca = "ca.crt"
EOF
配置认证信息
ini 复制代码
server = "https://harbor.example.com"

[host."https://harbor.example.com"]
  capabilities = ["pull", "resolve", "push"]
  [host."https://harbor.example.com".header]
    Authorization = "Basic <TOKEN>" # 填入"用户名:密码"的base64值

注意:毫秒镜像当前不支持此认证方式,请使用篇首的配置方法。

3. Kubernetes环境配置

为Kubernetes环境配置镜像拉取凭证:

  1. 创建Secret

    ini 复制代码
    kubectl create secret docker-registry regcred \
      --docker-server=k8s.1ms.run \
      --docker-username=<your_username> \
      --docker-password=<your_password>
  2. 在Pod配置中引用

    yaml 复制代码
      spec:
        containers:
        - name: 1ms-container
          image: k8s.1ms.run/<name>/<image>
        imagePullSecrets:
        - name: regcred

注意事项

  • ctr命令不会读取config.toml中的配置,需手动指定 --hosts-dir "/etc/containerd/certs.d"
  • 建议使用crictlnerdctl进行命令行调试
  • 如需在k8s环境下使用,每个节点都需要配置/etc/containerd/config.toml并重启containerd,生产环境建议使用spec.imagePullSecrets的方式。

如需更详细的证书配置或镜像加速,可参考相关文档。

www.orchome.com/17176

www.cnblogs.com/v-fan/p/183...

www.cnblogs.com/niuben/p/18...

www.cnblogs.com/hahaha11112...

blog.csdn.net/weixin_4054...

blog.csdn.net/weixin_4438...

相关推荐
短剑重铸之日12 分钟前
《7天学会Redis》Day 1 - Redis核心架构与线程模型
java·redis·后端·架构·i/o多路复用·7天学会redis
努力的小郑13 分钟前
Spring 的西西弗斯之石:理解 BeanFactory、FactoryBean 与 ObjectFactory
后端·spring·面试
华仔啊13 分钟前
Java 异步调用失败导致系统崩溃?这份重试机制救了我
java·后端
SimonKing14 分钟前
基于Netty的WebSocket服务端
java·后端·程序员
UpgradeLink17 分钟前
基于 Go 打造的升级链路管理平台:upgradelink 让设备升级更简单
开发语言·后端·golang
CodeSheep41 分钟前
这个老牌知名编程论坛,彻底倒下了!
前端·后端·程序员
*才华有限公司*1 小时前
#从401到200:Spring Boot + Vue 静态资源访问全链路问题解决方案
vue.js·spring boot·后端
superman超哥1 小时前
Rust 异步并发基石:异步锁(Mutex、RwLock)的设计与深度实践
开发语言·后端·rust·编程语言·rust异步并发·rust异步锁·rust mutex
叫我:松哥1 小时前
基于Flask开发的智能招聘平台,集成了AI匹配引擎、数据预测分析和可视化展示功能
人工智能·后端·python·信息可视化·自然语言处理·flask·推荐算法
IT_陈寒1 小时前
Java开发者必知的5个性能优化技巧,让应用速度提升300%!
前端·人工智能·后端