← До списку лабораторних по Docker
Повний опис / сценарій лабораторної:
Мета: відпрацювати сценарій оновлення сервісу з можливістю відкату. Крок 1. Підготувати два теги одного образу. Пояснення: наприклад lab23-web:v1 і lab23-web:v2 з різним текстом сторінки. Крок 2. Створити сервіс з початковою версією v1. Команда: docker service create --name web23 --replicas 3 -p 8083:80 lab23-web:v1 Пояснення: три репліки дозволять побачити плавне оновлення. Крок 3. Перевірити відповідь сервісу. Команда: curl http://localhost:8083 Пояснення: зафіксуй що зараз працює версія v1. Крок 4. Запустити rolling оновлення до v2. Команда: docker service update --image lab23-web:v2 --update-parallelism 1 --update-delay 10s web23 Пояснення: по одній репліці кожні 10 секунд. Крок 5. Спостерігати за процесом оновлення. Команда: docker service ps web23 Пояснення: побачиш змішані завдання зі старим і новим образом. Крок 6. Періодично опитувати сервіс під час оновлення. Команда: while true; do curl -s http://localhost:8083 | head -n1; sleep 2; done Пояснення: зверни увагу як змінюється відповідь. Крок 7. Зімітувати невдалу версію. Пояснення: уяви що v2 має критичну помилку яку ти помітив у процесі. Крок 8. Виконати відкат на попередній образ. Команда: docker service update --image lab23-web:v1 web23 Пояснення: Swarm поверне усі репліки до стабільної версії. Крок 9. Перевірити що сервіс знову віддає v1. Команда: curl http://localhost:8083 Крок 10. Міні звіт. Завдання: опиши як би ти налаштував стратегію оновлення для критичного прод сервісу.