Реплики службы в Docker Swarm остаются 0/1 навсегда

Да, я уже пробовал этот вопрос и не дублирует вопрос

Я учусь использовать Docker Swarm и я использую Docker-Play
У меня есть менеджер (узел1) и 2 работника (узел2 и узел3)

$ docker node ls
ID                            HOSTNAME            STATUS              AVAILABILITY        MANAGER STATUS
j4maivz26wactwn9ghgosg219     node2               Ready               Active
p6cpvetwrsqu6oiqzfq2bxxsv     node3               Ready               Active
r7y5zktfore76l9z3n0keu7ae *   node1               Ready               Active              Leader

поэтому я создал сервис

 docker service create --network ingress --name mysql -e MYSQL_ROOT_PASSWORD=demodocker -e MYSQL_DATABASE=wordpressdatabase -e M
YSQL_USER=root -e MYSQL_PASSWORD=demodocker mysql

и реплики остаются 0/1 навсегда

$ docker service ls
ID                  NAME                MODE                REPLICAS            IMAGE               PORTS
jub3wh8yz2cd        mysql              replicated          0/1                 mysql:latest

поэтому я стараюсь:

 docker service create --network ingress --name mysql2 -e MYSQL_ROOT_PASSWORD=demodocker -e MYSQL_DATABASE=wordpressdatabase -e M
YSQL_USER=root -e MYSQL_PASSWORD=demodocker mysql:latest top

и я пытаюсь:

 docker service create --network ingress --replicas 1 --name mysql2 -e MYSQL_ROOT_PASSWORD=demodocker -e MYSQL_DATABASE=wordpressdatabase -e M
YSQL_USER=root -e MYSQL_PASSWORD=demodocker mysql:latest top

Я пробую самую простую строку кода:

docker service create --network ingress --name mysql -e MYSQL_ROOT_PASSWORD=demodoceker mysql

но все работает, я посмотрел этот вопрос тоже, но я не нахожу ни один параметр неправильно

Дополнительная информация:

$ docker service ps mysql
ID                  NAME                IMAGE               NODE                DESIRED STATE       CURRENT STATE        ERROR
           PORTS
j523hr6mnfqk        mysql            mysql:latest                            Running             New 13 minutes ago

,

$ docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
wordpress           latest              ca96afcfa242        2 weeks ago         406MB
mysql               latest              e799c7f9ae9c        3 weeks ago         407MB

Спасибо;)

1 ответ

Решение

Не прикрепляйте услуги напрямую к ingress сеть. Это, кажется, вызывает проблему, так как я не испытываю то же самое при удалении --network ingress, Я могу воспроизвести вышеизложенное (с --network ingress set), и я не вижу никаких журналов (службы или демона), которые могли бы дать подсказку о том, почему он выходит из строя, так что, думаю, это не так уж и хорошо. Может быть, поднять проблему с Docker для лучшей регистрации / ошибки здесь?

ingress сеть используется при публикации портов для службы, поэтому позвольте Docker напрямую управлять вложениями.

Редактировать: Кстати, это все равно не получится после того, как вы уберете это по причинам mysql (я не верю в создание таблицы? Но сама служба пытается запустить).

Другие вопросы по тегам