backlog: secrets-env-to-file разложена по приложениям
- Шесть задач `secrets-file-*` вместо одной: outline, wakapi, authelia, gramps (средний), gitea, tududi (низкий, выигрыш частичный). Wanderer отпал — файловых секретов не умеет ни meilisearch, ни pocketbase. - Матрица механизмов со ссылками на код уехала в docs/drafts/secrets-file-support.md, родитель — на кладбище.
This commit is contained in:
@@ -0,0 +1,24 @@
|
||||
# outline: секреты из файлов
|
||||
|
||||
**Приоритет:** Средний
|
||||
|
||||
Сейчас в `environment:` стоят прямыми значениями пароль postgres (внутри
|
||||
`DATABASE_URL`), `SECRET_KEY`, `UTILS_SECRET`, секрет OIDC и пароль SMTP. Outline
|
||||
`1.9.2` умеет generic-механизм: пустая переменная читается из `<NAME>_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).
|
||||
Reference in New Issue
Block a user