6.9 KiB
title, type, tags, created, updated
| title | type | tags | created | updated | ||||||
|---|---|---|---|---|---|---|---|---|---|---|
| *arr Stack на Кракене — Pitfalls & Config | reference |
|
2026-05-19 | 2026-05-19 |
*arr Stack на Кракене — Pitfalls & Config
Архитектура
Prowlarr (9696) → Radarr (7878) + Sonarr (8989) → Transmission (9091) → Jellyfin (8096)
Web UI (nginx reverse proxy)
Все сервисы доступны через nginx на порту 80 (urlBase настроен в каждом сервисе):
| Сервис | URL | Прямой порт |
|---|---|---|
| Sonarr | http://kraken/sonarr | 8989 |
| Radarr | http://kraken/radarr | 7878 |
| Prowlarr | http://kraken/prowlarr | 9696 |
| Jellyfin | http://kraken/jellyfin | 8096 |
| Transmission | http://kraken/transmission | 9091 |
Конфиг: /etc/nginx/openmediavault-webgui.d/media-services.conf (используем ^~ prefix чтобы перебить OMV regex .json location).
⚠️ Pitfall: OMV имеет regex `location ~* .json--- title: "*arr Stack на Кракене — Pitfalls & Config" type: reference tags:
- kraken
- radarr
- sonarr
- prowlarr
- arr
- pitfalls created: '2026-05-19' updated: '2026-05-19'
*arr Stack на Кракене — Pitfalls & Config
который перехватывает все JSON запросы (в т.ч. /sonarr/initialize.json). Без ^~ сервисы открываются белым экраном.
Docker Networks
| Сервис | Сети |
|---|---|
| Radarr | docker_default |
| Sonarr | media_net + docker_default |
| Prowlarr | docker_default + media_net |
| Transmission | docker_default |
| Jellyfin | (отдельно) |
Sonarr изначально был только в media_net → не видел Transmission → ошибки download client. Добавлен в docker_default в docker-compose.yml.
watchlist-sync .env URLs
После установки urlBase — API переехало на base path:
RADARR_URL=http://localhost:7878/radarr
SONARR_URL=http://localhost:8989/sonarr
JELLYFIN_URL=http://localhost:8096/jellyfin
API ключи (prefixes)
| Сервис | Prefix | Полный ключ |
|---|---|---|
| Radarr | cbcb8ec3 |
в family/projects/media-toolbox-kraken.md |
| Sonarr | 15fbec32 |
в family/projects/media-toolbox-kraken.md |
| Prowlarr | 134ac38a |
в family/projects/media-toolbox-kraken.md |
Получить полный ключ:
docker exec <svc> grep ApiKey /config/config.xml
Prefixes в памяти только для идентификации — никогда не хардкодить полные ключи в промптах.
⚠️ DNS Pitfall — Pi-hole блокирует skyhook.sonarr.tv
Симптом: поиск при добавлении сериала/фильма через Sonarr/Radarr не запускается.
Причина: Pi-hole блокирует skyhook.sonarr.tv (и возможно другие *arr endpoints).
Фикс: прописать явный DNS в docker-compose.yml для Sonarr и Radarr:
dns:
- 8.8.8.8
- 8.8.4.4
Применено: 2026-05-18. Файлы: /srv/.../docker/radarr/docker-compose.yml и sonarr/docker-compose.yml.
Root folders
- Radarr:
/media/movies-radarr - Sonarr:
/media/series-sonarr
(Router script создаёт symlinks из этих папок в тематические библиотеки Jellyfin.)
Prowlarr → Sonarr/Radarr sync — правильная настройка
Корень проблемы "неправильный URL": Prowlarr при sync проставляет в Sonarr/Radarr URL вида http://prowlarr:9696/N/ вместо http://prowlarr:9696/prowlarr/N/. Это происходит если в настройках Application → prowlarrUrl не указан urlBase.
Правильное значение в Prowlarr → Settings → Apps → (Sonarr/Radarr) → Prowlarr URL:
http://prowlarr:9696/prowlarr
(без trailing slash, с urlBase /prowlarr)
После изменения — запустить принудительный sync:
curl -X POST "http://localhost:9696/prowlarr/api/v1/command?apikey=KEY" \
-H "Content-Type: application/json" -d '{"name":"ApplicationIndexerSync"}'
Grab limit 429 — решение через магнет-ссылки
NoNaMe Club, RuTracker и другие дают 429 при скачивании torrent-файлов (дневной лимит).
Фикс: включить preferMagnetUrl: true для каждого индексера в Prowlarr → Indexers → (индексер) → Torrent Base Settings → Prefer Magnet URL.
Через API:
curl -s "http://localhost:9696/prowlarr/api/v1/indexer/ID?apikey=KEY" | \
jq '(.fields[] | select(.name=="torrentBaseSettings.preferMagnetUrl") | .value) = true' | \
curl -X PUT "http://localhost:9696/prowlarr/api/v1/indexer/ID?apikey=KEY" \
-H "Content-Type: application/json" -d @-
Применено для индексеров: RuTracker (1), RuTor (2), Byrutor (3), NoNaMe Club (4).
Kinozal — лимит на скачивание торрент-файлов
Kinozal (стандартный) даёт 429 на скачивание. Решение — Kinozal (M) (магнет-версия, definitionFile: kinozal-magnet). Добавлен в Prowlarr как отдельный индексер с теми же credentials. Синкается в Sonarr и Radarr через Applications.
Индексеры — текущий состав (Prowlarr)
| ID | Имя | Тип | Примечание |
|---|---|---|---|
| 1 | RuTracker | semi-private | блокируется при rate limit на сутки |
| 2 | RuTor | public | поиск по imdbid |
| 3 | Byrutor | public | |
| 4 | NoNaMe Club | semi-private | нет логина, только анонимный |
| 5 | Kinozal | semi-private | оставлен, но Kinozal (M) предпочтительнее |
| 6 | Kinozal (M) | semi-private | магнет, без grab limit ✅ |
Sonarr — поиск русских сериалов
Sonarr берёт название из TVDB. Для русских сериалов TVDB ставит английский перевод как primary. Prowlarr отправляет оба варианта (через addrussian и alternate titles), но это зависит от индексера.
Работающий путь: Kinozal (M) с addrussian: true и stripcyrillic: false — находит по русскому названию. Подтверждено: Кибердеревня найдена и скачана.
Связанные заметки
- family/projects/media-toolbox-kraken — полный статус проекта
- tech/kraken-network — инфра Кракена