diff --git a/servers/media-core/media-core/README.md b/servers/media-core/media-core/README.md index 082933c..8330c60 100644 --- a/servers/media-core/media-core/README.md +++ b/servers/media-core/media-core/README.md @@ -9,7 +9,9 @@ Auto Sync、同步后拉镜像和自动 redeploy 均关闭;Git push 后必须 - NZBHydra2 `8.9.0-ls103` - Lidarr `3.1.0.4875-ls40` - Whisparr `2.2.0-release.231` -- Sonarr4K `4.0.19.2979-ls319` +- Sonarr4K `4.0.19.2979-ls323` +- Radarr4K `6.3.0.10514-ls315` +- Seerr `v3.4.1`(从 Jellyseerr 自动迁移) 下载器保留在 unRaid。Lidarr、Whisparr 和 Sonarr4K 当前使用 unRaid SABnzbd; Sonarr4K 的容器路径 `/mnt/unRaid/downloads` 与 SAB 报告路径一致。 @@ -34,11 +36,21 @@ Sonarr4K 于 2026-09-07 从 unRaid 迁入。源容器已停止但保留,冷备 /opt/media-core/backups/sonarr4k-config-cold-20260907-070232.tar ``` -源镜像的 registry manifest 已不可用,因此从 unRaid 导出正在运行的精确镜像,导入 -`media-core` 后标记为 `local/sonarr:4.0.19.2979-ls319`,Compose 使用 -`pull_policy: never`。迁移后不要运行会清除未引用镜像的全局 prune。后续升级必须先做 -新备份,再把 Compose 改回可拉取的 registry digest,并作为独立变更执行。 +首次迁移时曾临时使用从 unRaid 导入的精确镜像 +`local/sonarr:4.0.19.2979-ls319`。用户随后确认生产镜像采用 LinuxServer `latest`; +2026-09-07 已升级到 `4.0.19.2979-ls323` 并固定当时的 registry digest。 验收基线:332 部受监控剧集、7,136 个 episode files、队列 0;SABnzbd 与 NZBHydra2 内建测试通过,Import List 和历史完整。旧 unRaid Sonarr4K 地址不得继续 作为 API 入口。 + +## Radarr4K 与 Seerr + +Radarr4K 从 unRaid 冷迁移到 `/opt/media-core/appdata/radarr4k`,沿用 +`/mnt/unRaid/movie4k` 和 `/mnt/unRaid/downloads` 容器路径。源容器及 Appdata 在迁移 +验收完成后继续保留为回滚点。 + +Jellyseerr 按官方迁移指南升级为 Seerr。旧 `/app/config` 数据复制到 +`/opt/media-core/appdata/seerr`,归属调整为 UID/GID `1000:1000`;官方容器使用 +`init: true`,不配置旧镜像的 PUID/PGID。自动迁移成功并核对用户、请求和四个 *Arr +连接前,不删除 unRaid 上的 Jellyseerr 容器与 Appdata。 diff --git a/servers/media-core/media-core/compose.yaml b/servers/media-core/media-core/compose.yaml index 47d6ade..3ad5c6b 100644 --- a/servers/media-core/media-core/compose.yaml +++ b/servers/media-core/media-core/compose.yaml @@ -22,8 +22,7 @@ services: max-file: "3" sonarr4k: - image: local/sonarr:4.0.19.2979-ls319 - pull_policy: never + image: lscr.io/linuxserver/sonarr:latest@sha256:4d9df314875e1249ab7d6170c2b9b3dc1d8e6383f168ceb10dc9a5ad9b324739 container_name: sonarr4k restart: unless-stopped environment: @@ -44,6 +43,55 @@ services: - no-new-privileges:true logging: *default-logging + radarr4k: + image: lscr.io/linuxserver/radarr:latest@sha256:95ba0801df4d9d1d79d0d9a3849f656542497dab061d91b87ad4f53a71aff3ef + container_name: radarr4k + restart: unless-stopped + environment: + PUID: "99" + PGID: "100" + UMASK: "022" + TZ: Asia/Shanghai + ports: + - "7878:7878" + volumes: + - /opt/media-core/appdata/radarr4k:/config + - /mnt/unraid/movie4k:/mnt/unRaid/movie4k + - /mnt/unraid/downloads:/mnt/unRaid/downloads + - /mnt/truenas/multimedia:/mnt/truenas/multimedia + networks: + - media-core + security_opt: + - no-new-privileges:true + logging: *default-logging + + seerr: + image: ghcr.io/seerr-team/seerr:latest@sha256:f4768de5f616248d723e05891f3345a1402123775d03bf0890dbfedc0831bda1 + init: true + container_name: seerr + restart: unless-stopped + environment: + LOG_LEVEL: info + TZ: Asia/Shanghai + PORT: "5055" + ports: + - "5055:5055" + volumes: + - /opt/media-core/appdata/seerr:/app/config + networks: + - media-core + healthcheck: + test: ["CMD-SHELL", "wget --no-verbose --tries=1 --spider http://localhost:5055/api/v1/settings/public || exit 1"] + start_period: 20s + timeout: 3s + interval: 15s + retries: 3 + security_opt: + - no-new-privileges:true + cap_drop: + - ALL + logging: *default-logging + lidarr: image: lscr.io/linuxserver/lidarr:latest@sha256:c74c32408fdf6e7926ad62641fc1a5544206ee65c33f2188bb179edb30e28f5a container_name: lidarr