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

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

Docker Лабораторна 47: Backup приватного реєстру

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

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

Тема: Резервне копіювання Docker Registry

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

Мета: відпрацювати варіант бекапу приватного Docker Registry.



Крок 1. Підняти локальний registry на окремому томі.

Команда: docker run -d -p 5001:5000 --name reg47 -v reg47-data:/var/lib/registry registry:2

Пояснення: усі образи зберігатимуться у томі reg47-data.



Крок 2. Запушити туди один тестовий образ.

Команди: docker pull busybox; docker tag busybox localhost:5001/test47; docker push localhost:5001/test47



Крок 3. Перевірити що образ доступний з реєстру.

Команда: docker pull localhost:5001/test47



Крок 4. Створити каталог для бекапу.

Команда: mkdir -p ~/reg47-backup && cd ~/reg47-backup



Крок 5. Зробити архів тому з даними реєстру.

Команда: docker run --rm -v reg47-data:/data -v $(pwd):/backup busybox tar czf /backup/registry47.tar.gz -C /data .



Крок 6. Видалити контейнер і том реєстру.

Команда: docker rm -f reg47; docker volume rm reg47-data

Пояснення: змоделюй втрату сховища.



Крок 7. Створити новий том і відновити дані з архіву.

Команда: docker volume create reg47-data; docker run --rm -v reg47-data:/data -v $(pwd):/backup busybox sh -c "cd /data && tar xzf /backup/registry47.tar.gz"



Крок 8. Запустити registry ще раз на цьому томі.

Команда: docker run -d -p 5001:5000 --name reg47 -v reg47-data:/var/lib/registry registry:2



Крок 9. Перевірити доступність образу після відновлення.

Команда: docker pull localhost:5001/test47



Крок 10. Міні звіт.

Завдання: опиши як ти автоматизував би такі бекапи і де зберігав би архіви.