← До списку лабораторних по Docker
Повний опис / сценарій лабораторної:
Мета: розібратися як overlay мережі дозволяють сервісам у Swarm спілкуватися між вузлами. Крок 1. Переконатися що Swarm вже ініціалізований. Команда: docker info | grep Swarm Пояснення: стан має бути Active. Крок 2. Створити overlay мережу. Команда: docker network create --driver overlay lab22-net Пояснення: ця мережа буде спільною для сервісів на різних вузлах. Крок 3. Створити сервіс бази даних у цій мережі. Команда: docker service create --name db22 --network lab22-net redis:alpine Пояснення: redis працюватиме тільки всередині overlay мережі. Крок 4. Створити сервіс додатку у тій же мережі. Команда: docker service create --name app22 --network lab22-net busybox sh -c "while true; do sleep 3600; done" Крок 5. Дізнатися ip адреси задач у мережі. Команда: docker service ps db22; docker service ps app22 Пояснення: зверни увагу на вузли де вони працюють. Крок 6. Зайти всередину задачі app22. Команда: docker exec -it $(docker ps -q --filter name=app22) sh Пояснення: усередині контейнера можна перевірити мережеву доступність redis. Крок 7. Перевірити звʼязок з db22 по імені сервісу. Команда з контейнера: ping -c1 db22 Пояснення: імʼя сервісу резолвиться у ip у overlay мережі. Крок 8. Вийти з контейнера та переглянути опис мережі. Команда: docker network inspect lab22-net Пояснення: подивися які сервіси підʼєднані до цієї overlay мережі. Крок 9. Видалити сервіси і мережу. Команда: docker service rm app22 db22; docker network rm lab22-net Крок 10. Міні звіт. Завдання: поясни коли overlay мережа потрібна а коли вистачає bridge.