Я использую докеры-составы и докеры. Я создал сервер docker-mgt, из которого я сделал докер-машину, чтобы настроить кластер рой, состоящий из мастера роя и двух агентов рой.Docker-compose and Docker-swarm
Я создал приложение Express, которое запускается в контейнере, и кажется, что мастер рой решил получить его на agent1. Затем у меня также есть сайт Wordpress (пример с сайта сокета докеров), который я запускаю с помощью docker-compose на Docker Swarm.
[email protected]:~/wordpress$ docker-compose up
wordpress_db_1 is up-to-date
Creating wordpress_web_1
ERROR: Error: image library/wordpress_web:latest not found
Следующие изображения доступны:
[email protected]:~/wordpress$ docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
orchardup/php5 latest c385b8a81cee 18 months ago 330.1 MB
swarm latest a9975e2cc0a3 19 hours ago 17.15 MB
orchardup/mysql latest 5a45a5a953bb 16 months ago 292.4 MB
wordpress_web latest e484f88dc8c8 11 minutes ago 350.9 MB
node-ip latest d177af00338b 39 minutes ago 549.5 MB
centos centos6 1a895dd3954a 8 weeks ago 190.6 MB
Так что действительно есть wordpress_web: последний доступный и еще жалуется.
При запуске этого приложения wordpress на отдельном хостеле докеры (а не в кластере рой) он работает отлично. Чтобы исключить ошибку в приложении wordpress, я также попробовал другое совершенно другое приложение, состоящее из двух контейнеров (с помощью docker-compose), и это точно такая же проблема.
Я начинаю думать, что сборщик докеров и рой не могут работать вместе гладко, но это, конечно, трудно поверить.
Спасибо, я использовал докер-концентратор, и это, похоже, действительно работает. Тем не менее, я был удивлен, увидев, что докеры составляют результаты запуска обоих контейнеров на роевом мастере вместо одного из обоих агентов? Любая идея, почему это так? – wiwa1978
рой имеет разные стратегии планирования (https://docs.docker.com/swarm/scheduler/strategy/). Значение по умолчанию должно быть распространено, поэтому я ожидаю, что он будет использовать другой хост, но, возможно, если контейнер был воссоздан, он будет помещен вместе. Вы можете использовать сродство или ограничение, чтобы поместить его на другой узел: https://docs.docker.com/swarm/scheduler/filter/ – dnephin