У меня есть образ в реестре Elastic Container Registry (ECR) Amazon, который я хочу развернуть в качестве службы Docker в своем рое Docker с одним узлом. В настоящее время служба использует более старую версию тега latest
изображения, но с тех пор я загрузил более новую версию тега latest
в ECR.
Запуск docker service update --force my_service
на моем узле swarm, который использует образ XXXXXXXXXXXX.dkr.ecr.us-east-1.amazonaws.com/my_service:latest
, приводит к:
image XXXXXXXXXXXX.dkr.ecr.us-east-1.amazonaws.com/my_service:latest не может быть доступен в реестре для записи его дайджеста. Каждый узел будет получать доступ к XXXXXXXXXXXX.dkr.ecr.us-east-1.amazonaws.com/my_service:latest независимо друг от друга, что может привести к тому, что на разных узлах будут работать разные версии образа.
Похоже, это препятствует тому, чтобы узел извлек новую копию тега latest
из реестра, а служба не могла должным образом обновиться.
Я правильно вошел в систему с docker login
в ECR, и запуск docker pull XXXXXXXXXXXX.dkr.ecr.us-east-1.amazonaws.com/my_service:latest
работает нормально (и возвращает дайджест).
Почему docker service update
не может прочитать дайджест из реестра ECR, несмотря на то, что образ доступен?