我正在尝试使用Nomad从ecr存储库和dockerhub中提取图像。问题是,如果我不自己拉出这些图像,Nomad就不会拉出它们,并会抱怨错误:
Failed to find docker auth for repo "envoyproxy/envoy": docker-credential-ecr-login with input "envoyproxy/envoy" failed with stderr: exit status 1它可以很容易地拉取ECR镜像,但我部署的sidecars或非ecr镜像所需的那些镜像,例如postgres,将不会由于相同的错误而被拉取。其他人也遇到过同样的问题吗?
发布于 2020-12-03 08:50:12
我也有同样的问题,如果你只是使用这一节,我不确定是否有办法解决它:
plugin "docker" {
config {
auth {
helper = "ecr-login"
}
}
}或者,我将其设置为:
plugin "docker" {
config {
auth {
config = "/opt/docker.json"
}
}
}然后使用以下值填充/opt/docker.json中的文件:
{
"credHelpers": {
"000000000000.dkr.ecr.us-west-2.amazonaws.com": "ecr-login"
},
"auths": {
"https://index.docker.io/v1/": {}
}
}将000000000000替换为您的aws帐户id,将us-west-2替换为您所在的地区。
发布于 2021-10-28 09:45:01
对于最新版本的混合ecr和非ecr工作负载,将身份验证配置指向只包含credHelpers节的docker配置似乎完全没问题:
/etc/onomad.d/nomad docker.hcl
plugin "docker" {
config {
auth {
config = "/root/.docker/config.json"
}
}
}/root/.docker/config.json
{
"credHelpers": {
"**********.dkr.ecr.eu-central-1.amazonaws.com": "ecr-login"
}
}https://stackoverflow.com/questions/64758958
复制相似问题