← До фільтрів та технологій

← До списку лабораторних по Docker

Docker Лабораторна 22: Overlay мережі в Swarm

Технологія: Docker

Номер лабораторної: 22 · Рівень: middle

Тема: Docker Swarm: overlay мережі

Повний опис / сценарій лабораторної:

Мета: розібратися як 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.