Невозможно обновить образ докера. Ошибка: хранилище не существует или может потребоваться "вход в докер"
Я развернул сторожевую башню, которая автоматически обновляет запущенные контейнеры Docker внутри Docker Swarm.
Я запускаю этот Docker Swarm на двух серверах AWS EC2 и использую AWS ECR в качестве реестра Docker.
избежать aws ecr get-login
Я использовал Amazon ECR Docker Credential Helper, который автоматически получает учетные данные для Amazon ECR при извлечении Docker push / docker, и нет необходимости входить в систему в течение 12 часов.
Проблема в том, что сторожевая башня выдает ошибку вроде:
time = "2019-03-12T03: 41: 10Z" level = info msg = "Невозможно обновить контейнер /crmproxy.1.wop3c1u2qktbkab8rukrlrgr6, err='Ошибка ответа от демона: доступ по запросу заблокирован для 00000000000.dkr..amazonaws.com/crm, хранилище не существует или может потребоваться "вход в докер". Переход к следующему. "
Я уверен, что речь не идет о входе в ECR. Я правильно связал учетные данные в WATCHTOWER contaiener, используя файл docker-compose.yml.
Вот конфигурации сторожевой башни в файле docker-compose.yml.
watchtower:
image: v2tec/watchtower
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- ~/.docker/config.json:/config.json
command: --interval 30
В моих исследованиях по этой проблеме я увидел, что у других есть такая же проблема, как и у меня, и есть человек, который решил это сам, но я не понимаю этого.
это то, что я нашел: решение, которое неясно
Я точно не знаю, правильный ответ или нет. но он сказал:
Проблема была в том, что я установил docker от имени пользователя root. Теперь установлен с ec2-пользователем Amazon Linux AMI и работает
Пожалуйста, помогите мне избежать этой проблемы, с которой я сталкиваюсь. Я пробовал так много раз. Любая помощь будет для меня преимуществом.
0 ответов
В вашем изображении есть дополнительная точка. Может ли это быть причиной вашей проблемы?
00000000000.dkr..amazonaws.com/crm
^
Также вы можете просто добавить ec2-пользователя в группу docker, чтобы он также мог выполнять команды docker: sudo usermod -aG docker ec2-user
, Не нужно переустанавливать.