The full compose file is available on GitHub.

Stack overview

  ┌──────────────────────────────────────────────────────────┐
  │                  nginx-proxy-manager                     │
  │                   :80 / :443 / :81                       │
  └──────┬────────────┬──────────────┬───────────────────────┘
         │            │              │        ../website/public
         ▼            ▼              ▼
    ┌────────┐   ┌─────────┐   ┌───────────┐
    │ jfa-go │──►│ jellyfin│◄─►│ jellyseer │
    │  :8056 │   │  :8096  │   │   :5055   │
    └────────┘   └────┬────┘   └─────┬─────┘
                      │              │
                      │              └───┬──────────┐
                      │                  ▼          ▼
                      │   ┌────────┐ ┌────────┐ ┌────────┐
                      ├──►│ bazarr │ │ radarr │ │ sonarr │
                      │   │ :6767  │ │ :7878  │ │ :8989  │
                      │   └───┬────┘ └───┬────┘ └───┬────┘
                      │       │          │          │
  ════════════════════╪═══════╪══════════╪══════════╪═════  ../media
                      │                  │          │
                      │                  └────┬─────┘
                      │                       ▼
                      │                  ┌───────────┐
                      │                  │  prowlarr │
                      │                  │   :9696   │
                      │                  └─────┬─────┘
                      │                        │
  ────────────────────│────────────────────────│──────────  watching vol
                      │                        │
                      │                        ▼
                      │     ┌────────────────────────────┐
                      │     │ transmission :9091         │
                      │     │   network_mode: vpn-router │
                      │     └────────────┬───────────────┘
  ════════════════════╧══════════════════╧════════════════  ../media
                                         │
                                         ▼
                                  ┌─────────────┐
                                  │  vpn-router │
                                  │  (openvpn)  │
                                  └─────────────┘

  ═══  shared media directory    ───  shared docker volume

Services

nginx-proxy-manager

Reverse proxy handling HTTP/HTTPS traffic and SSL termination via Let’s Encrypt. All services are exposed through it rather than directly. Management UI on port 81.