docker - 如何使用 Gitlab CI/CD 启用 FF_GITLAB_REGISTRY_HELPER_IMAGE 或替代方案
问题描述
我们在构建过程中使用 Gitlab CI/CD。最近,我们开始遇到错误消息:
ERROR: Job failed (system failure): prepare environment: image pull failed: rpc error: code = Unknown desc = Error response from daemon: toomanyrequests: You have reached your pull rate limit. You may increase the limit by authenticating and upgrading: https://www.docker.com/increase-rate-limit. Check https://docs.gitlab.com/runner/shells/index.html#shell-profile-loading for more information
Gitlab 建议将FF_GITLAB_REGISTRY_HELPER_IMAGE
它添加到 config.toml for runners 中。我使用 Gitlab 的 CI/CD 通过 AWS 在 EKS 上自动部署。因此,我无法访问设置的可配置运行器。我尝试添加:
FEATURE_FLAG_NAME: 1
FF_GITLAB_REGISTRY_HELPER_IMAGE: 1
到 gitlab-ci.yml 无效。
我正在查看使用这里讨论的依赖代理,但它似乎没有太大的影响。
问题:
如何让 Gitlab 的自动部署将 gitlab 运行器帮助程序映像与 EKS 部署一起使用?
如何将 gitlab-ci.yml 配置为使用 docker 令牌来拉取图像?
解决方案
在您的 .gitlab-ci.yml 文件中设置为全局变量,如下所示。
variables:
FF_GITLAB_REGISTRY_HELPER_IMAGE: "true"
那应该工作。
您可以查看https://docs.gitlab.com/ee/ci/variables/#custom-cicd-variables以获取 gitlab-ci 变量。
推荐阅读
- python - Pycaret models() 方法抛出 NameError
- postgresql - 数据库创建错误:访问被拒绝 Odoo 14
- c - C如何计算int和float数据类型混合
- django - (Django Rest Framework) 在rest_framework_simplejwt.tokens 中使用RefreshToken 类时出错
- node.js - 如何处理转换 Node.js 流中的“结束”/“关闭”事件?
- mysql - MySQL 中的 ON DUPLICATE KEY UPDATE 是否会导致使用额外的磁盘空间?
- android - 插件 `google_map_location_picker` 使用了已弃用的 Android 嵌入版本
- ruby-on-rails - 访问 StandardError 哈希
- azure-devops - 有关新测试失败的 Azure 管道电子邮件通知
- vue.js - 输入占位符值莫名其妙地移动到其父元素