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

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

Docker Лабораторна 67: Зовнішні секрети

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

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

Тема: Інтеграція Docker сервісів зі сховищем секретів

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

Мета: зрозуміти як підʼєднувати секрети з зовнішнього сховища замість локальних env змінних.



Крок 1. Ознайомитися з прикладом сховища секретів.

Пояснення: це може бути HashiCorp Vault, AWS SSM або інше рішення.



Крок 2. Створити тестовий секрет у вибраному сховищі.

Пояснення: наприклад рядок підключення до бази.



Крок 3. Написати невеликий helper скрипт який зчитує секрет і виводить його у stdout.

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



Крок 4. Додати у Dockerfile встановлення клієнтських утиліт для доступу до сховища.

Пояснення: наприклад cli для cloud провайдера.



Крок 5. Налаштувати аутентифікацію контейнера у сховищі.

Пояснення: через service account, роль або тимчасовий токен.



Крок 6. У entrypoint скрипті отримувати секрет перед стартом основного процесу.

Пояснення: записати його у тимчасовий файл або env змінну у памʼяті.



Крок 7. Переконатися що секрет не опиняється у логах.

Пояснення: не друкуй секрет у stdout stderr.



Крок 8. Перевірити поведінку якщо секрет недоступний.

Пояснення: застосунок має коректно завершитися з помилкою і не стартувати у напівробочому стані.



Крок 9. Оцінити затримку отримання секретів при старті.

Пояснення: це важливо для автоскейлінгу.



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

Завдання: опиши плюс мінус моделі коли секрети лежать у зовнішньому сховищі а не у env файлах.