Docker для Маркетера

Пароли в Dockerfile — путь к утечке. Как передавать секреты правильно

Пароли в Dockerfile — путь к утечке. Как передавать секреты правильно

Видел десятки проектов, где пароль от базы вписан прямо в Dockerfile или в compose-файл, а файл лежит в открытом репозитории.

Уровни правильности, от простого к надёжному:

Уровень 1: файл .env. Compose автоматически читает переменные из файла .env рядом. В compose пишете MYSQL_ROOT_PASSWORD: ${DB_PASS}, значение — в .env. Сам .env добавляете в .gitignore и никогда не коммитите.

Уровень 2: переменные через команду. docker run -e DB_PASS=... — ничего не пишется на диск, но остаётся в истории терминала.

Уровень 3: Docker secrets. Секрет монтируется в контейнер как файл в /run/secrets/. Приложение читает оттуда. Используется в Swarm, но поддерживается и в обычном Compose.

Для большинства маркетинговых задач достаточно первого уровня. Ключевое — .env вне репозитория, и разные .env для локальной и боевой среды.
Этот пост опубликован в Telegram-канале Docker для Маркетера. Подписаться можно по ссылке: @docker_marketers.
tech

Свежие посты в категории «Tech Infrastructure»

Все каналы категории →

start

Готовы запустить рекламу через сеть public.tg?

Новый оффер, продукт, GEO, кейс, событие или партнёрский запуск — соберём маршрут под задачу и отдадим медиаплан.

Telegram для медиаплана: @AFFtop_connect. Быстрый тест: $20 за канал, $1000 за пакет по сети.