Files
pet-project-server/docs/backlog/container-hardening-nits.md
T
av 1b2bc61cff docs: реестр убран из описаний, беклог отмечен по локальной сборке
- AGENTS.md: homepage/transcriber собираются ролью app_image, registry-плейбуков
  и vars/transcriber.images.yml больше нет
- local-image-build: закрыты шаги по homepage и transcriber, остался вынос
  yc_*-переменных из vault; добавлены замеры архивов
- container-hardening-nits: снят пункт про плавающий `:latest` у homepage
2026-07-25 14:37:08 +03:00

1.5 KiB
Raw Blame History

Мелкий хардненинг контейнеров

Приоритет: низкий

  • no-new-privileges: ни один compose-шаблон не задаёт security_opt: ["no-new-privileges:true"]. Добавить всем — одна строка, режет эскалацию через setuid-бинарники в образах.
  • non-root user:: без него работают caddyproxy, gramps (данные в /root/.gramps), rssbridge, dozzle, homepage и valkey/postgres-сайдкары gramps. Дотянуть там, где образ позволяет (rssbridge, valkey) — продолжение уже принятой в проекте практики.
  • homepage на :latestснято: переход на роль app_image (local-image-build) дал каждому деплою уникальный тег из BUILD_ID, плавающего latest больше нет ни у homepage, ни у остальных.
  • Соглашение о портах: зафиксировать в AGENTS.md, что новые ports: — только с 127.0.0.1:. Docker публикует порты мимо UFW, поэтому дисциплина localhost-биндинга — единственный контроль (сейчас соблюдается: apprise, wanderer).

Из sec-ревью (fable, 2026-07-13).

Связано: все files//docker-compose.template.yml, vars/homepage.yml, AGENTS.md.