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

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

Docker Лабораторна 5: Том проти bind mount

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

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

Тема: Volume та bind mount

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

Мета: навчитися працювати з docker volume і bind mount та розуміти відмінності.



Крок 1. Створити том Docker.

Команда: docker volume create lab5-data

Пояснення: том зберігається у керованому Docker місці.



Крок 2. Запустити контейнер з використанням цього тому.

Команда: docker run -d --name vol-test -v lab5-data:/data busybox sh -c "while true; do sleep 3600; done"

Пояснення: том монтується у каталог /data.



Крок 3. Записати файл у том з контейнера.

Команда: docker exec vol-test sh -c "echo hello > /data/vol.txt"

Пояснення: файл буде збережено у томі.



Крок 4. Зупинити і видалити контейнер vol-test.

Команда: docker rm -f vol-test

Пояснення: том при цьому не зникає.



Крок 5. Запустити новий контейнер з тим же томом.

Команда: docker run --rm -v lab5-data:/data busybox cat /data/vol.txt

Пояснення: переконайся що дані збереглися.



Крок 6. Створити локальну директорію для bind mount.

Команда: mkdir -p ~/lab5-bind && echo bind > ~/lab5-bind/file.txt



Крок 7. Запустити контейнер з bind mount.

Команда: docker run --rm -v ~/lab5-bind:/app busybox ls /app

Пояснення: у контейнері видно файли з хоста.



Крок 8. Змінити файл всередині контейнера.

Команда: docker run --rm -v ~/lab5-bind:/app busybox sh -c "echo changed >> /app/file.txt"

Пояснення: зміни зʼявляться і на хості.



Крок 9. Порівняти сценарії використання volume та bind mount.

Пояснення: томи краще для абстракції, bind mount зручно для розробки.



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

Завдання: зроби таблицю плюси і мінуси кожного підходу для прод і дев середовища.