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

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

Docker Лабораторна 12: Робота з секретами

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

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

Тема: Секрети та конфіг в контейнерах

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

Мета: відпрацювати способи передавання секретів і конфіг у контейнер без жорсткого запису у образ.



Крок 1. Запустити контейнер з конфігом через змінні середовища.

Команда: docker run --rm -e APP_MODE=dev busybox env | grep APP

Пояснення: змінні видно всередині контейнера.



Крок 2. Створити файл з конфігурацією на хості.

Пояснення: наприклад app.conf з параметрами.



Крок 3. Підʼєднати цей файл через bind mount.

Команда: docker run --rm -v $(pwd)/app.conf:/etc/app.conf busybox cat /etc/app.conf



Крок 4. Обговорити ризики збереження секретів у repo.

Пояснення: ніколи не коміть паролі у git.



Крок 5. Ознайомитися з docker swarm secrets концептуально.

Пояснення: прочитай короткий опис у документації.



Крок 6. Створити секрет swarm у локальному режимі якщо це можливо.

Команда: docker swarm init; docker secret create db-pass -

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



Крок 7. Використати секрет у сервісі swarm.

Пояснення: створити service який монтує секрет у /run/secrets.



Крок 8. Перевірити вміст секрету всередині контейнера.

Команда: docker exec -it <container> cat /run/secrets/db-pass



Крок 9. Знищити секрет і swarm кластер.

Команда: docker secret rm db-pass; docker swarm leave --force



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

Завдання: опиши які альтернативні інструменти для секретів ти знаєш (vault, ssm, інші).