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

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

Docker Лабораторна 44: Root файлової системи тільки для читання

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

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

Тема: Read-only rootfs та writable каталоги

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

Мета: відпрацювати сценарій коли коренева файловa система контейнера доступна тільки для читання.



Крок 1. Запустити базовий контейнер з read-only опцією.

Команда: docker run --rm -it --read-only --name ro-test busybox sh



Крок 2. Спробувати створити файл у /.

Команда: touch /testfile || echo "fail"

Пояснення: команда має завершитися помилкою через read-only rootfs.



Крок 3. Вийти і запустити контейнер з read-only та tmpfs для /tmp.

Команда: docker run --rm -it --read-only --tmpfs /tmp busybox sh



Крок 4. Створити файл у /tmp.

Команда: echo "ok" > /tmp/file.txt

Пояснення: tmpfs монтується як окрема writable область у памʼяті.



Крок 5. Додати додатковий writable том для /var/log.

Пояснення: використай -v lab44-logs:/var/log.



Крок 6. Перевірити що логи можна записувати.

Пояснення: створити файл у /var/log і подивитися що помилки не виникають.



Крок 7. Вийти і переглянути вміст тому на хості.

Команда: docker run --rm -v lab44-logs:/logs busybox ls -l /logs



Крок 8. Оцінити які каталоги мають бути writable для твого сервісу.

Пояснення: це зазвичай /tmp, каталоги кешу, конфігурацій які мають змінюватися.



Крок 9. Сформувати мінімальний список writable шляхів для прод контейнера.

Пояснення: менше writable місць означає кращу безпеку.



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

Завдання: опиши які типи атак ускладнює використання read-only rootfs.