## Ошибка запуска или healthcheck Выполните `docker compose config --quiet`, `docker compose ps` и `docker compose logs --tail=100 ntfy permissions`. Проверьте успешное завершение инициализатора и запись в том для UID/GID 1000. `/v1/health` должен вернуть healthy true. Неверная bcrypt-запись блокирует запуск: получите её через `user hash` закреплённого образа и заключите в одинарные кавычки в .env. Не вставляйте открытый пароль или хэш с неэкранированными долларами. ## Ошибка входа, токена или доступа к теме Входите с именем до первого двоеточия в NTFY_AUTH_USERS. Хэш декларативный и применяется при каждом запуске; правка заметки с открытым паролем или CLI-смена пароля предопределённого пользователя его не меняет. Автоматизациям создавайте обычные аккаунты, проверяйте `docker compose exec ntfy ntfy user list` и разрешайте только нужные темы через `ntfy access`. Токен получает ACL владельца. Имя темы не является учётными данными. ## В открытой странице сообщения есть, в фоне — нет Серверный smoke подтверждает HTTP-доставку, не системный push. Проверьте URL сервера в клиенте, вход, сеть и разрешения уведомлений. Browser Web Push требует HTTPS/VAPID и push-сервисов браузера; мгновенный push собственного сервера на iOS — upstream-polling; у прямого подключения Android есть требования к фоновому режиму и батарее. Рецепт эти интеграции не настраивает. Используйте официальную настройку клиента, не отключайте авторизацию. ## Неверная ссылка вложения или скачивание без входа Задайте в NTFY_URL точный внешний origin, пересоздайте ntfy и проверьте новое пробное вложение. URL намеренно работает как ссылка доступа без входа; ACL темы не защищает утёкшую ссылку. Шифруйте чувствительные файлы до загрузки. Сообщения и вложения истекают через семь дней, восстановление сохраняет исходные сроки. Проверьте диск и лимиты: 1 ГБ суммарно и 15 МБ на файл. ## Обрывы прокси или rate limit Сохраните websocket-upgrade и потоковый HTTP, выключите буферизацию прокси и задайте большой read timeout. Пока доверие forwarded-IP выключено, запросы делят лимит IP прокси. Держите порт 8083 закрытым; контейнерный прокси не достигает сервиса хоста через собственный 127.0.0.1. Не доверяйте произвольному X-Forwarded-For ради обхода лимитов. ## Пропавшие данные после восстановления Проверьте, что полный архив содержит обе SQLite-базы и вложения; сравните configuration.env вручную до восстановления. Несоответствующая NTFY_AUTH_USERS перекроет восстановленные учётные данные администратора. На время проверки сохраните текущий том и страховочную копию; истёкший кэш после восстановления не становится свежим. Повторите чтение сообщения и вложения, вход обычного пользователя и проверку ограниченного токена. Источники: [настройки](https://docs.ntfy.sh/config/), [отправка](https://docs.ntfy.sh/publish/), [подписки](https://docs.ntfy.sh/subscribe/).