使用 docker 我会运行docker login,但是你如何使用ctr/进行类似的操作containerd?
由于达到速率限制,我们需要登录:
ctr:复制失败:httpReaderSeeker:打开失败:意外状态代码https://registry-1.docker.io/v2/library/[...]:429 请求太多 - 服务器消息:toomanyrequests:您已达到您的要求拉动速率限制。您可以通过身份验证和升级来增加限制: https: //www.docker.com/increase-rate-limit
按照containerd文档:/etc/containerd/config.toml
version = 2
[plugins."io.containerd.grpc.v1.cri".registry.configs."docker.io".auth]
username = "myusername"
password = "mypassword"
Run Code Online (Sandbox Code Playgroud)
似乎不起作用。
小智 4
是的,我也是,但我不明白为什么。因此,我像指南一样编辑了我的配置:https://docs.d2iq.com/dkp/kommander/1.4/operations/manage-docker-hub-rate-limits/
正如你所看到的,文档中的原始代码
[plugins."io.containerd.grpc.v1.cri".registry.configs."docker.io".auth]
Run Code Online (Sandbox Code Playgroud)
如果更改为这个(完整域),它就可以工作
[plugins."io.containerd.grpc.v1.cri".registry.configs."registry-1.docker.io".auth]
Run Code Online (Sandbox Code Playgroud)
重启containerd并检查。
测试,编写bash脚本
TOKEN=$(curl --user 'YOUR_LOGIN_USER:YOUR_LOGIN_PASSWORD' "https://auth.docker.io/token?service=registry.docker.io&scope=repository:ratelimitpreview/test:pull" | jq -r .token)
curl --head -H "Authorization: Bearer $TOKEN" https://registry-1.docker.io/v2/ratelimitpreview/test/manifests/latest | grep -i rate
Run Code Online (Sandbox Code Playgroud)
我的结果,可用 198/200
ratelimit-limit: 200;w=21600
ratelimit-remaining: 198;w=21600
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
11352 次 |
| 最近记录: |