# outline: секреты из файлов **Приоритет:** Средний Сейчас в `environment:` стоят прямыми значениями пароль postgres (внутри `DATABASE_URL`), `SECRET_KEY`, `UTILS_SECRET`, секрет OIDC и пароль SMTP. Outline `1.9.2` умеет generic-механизм: пустая переменная читается из `_FILE`, поэтому все пять закрываются по образцу miniflux — роль `secrets` + монтирование каталога `:ro`. Отдельный шаг внутри задачи — пароль БД: `DATABASE_URL_FILE` выносит **весь** URL одним куском, и чтобы вынести именно пароль, нужен переход на раздельные `DATABASE_HOST/PORT/NAME/USER` (они взаимоисключимы с `DATABASE_URL`). Заодно сайдкар postgres переводится на штатный `POSTGRES_PASSWORD_FILE`. Готово, когда `docker inspect` контейнеров outline и его postgres не показывает ни одного секрета, а в compose-шаблоне не осталось jinja-переменных с секретами — и, как следствие, дифф этого шаблона снова можно смотреть без `no_log`. Механизм и ссылки на код: [справка по файловым секретам](../drafts/secrets-file-support.md). Из декомпозиции `secrets-env-to-file` (2026-07-25). Связано: files/outline, files/miniflux (образец), roles/secrets, [no-secrets-in-playbook-output](no-secrets-in-playbook-output.md).