# ✅ Verified Service Inventory

**Last Updated:** 2026-03-08 (via Portainer API)

This document contains the actual running services verified from Portainer, not just what's defined in compose files.

## 📊 Summary

| Host | Containers | Running | Stopped/Issues |
|------|------------|---------|----------------|
| **Atlantis** | 59 | 58 | 1 (wgeasy exited) |
| **Calypso** | 61 | 61 | 0 |
| **Concord NUC** | 19 | 19 | 0 |
| **Homelab VM** | 38 | 37 | 1 (openhands-runtime exited) |
| **RPi 5** | 6 | 6 | 0 |
| **Total** | **183** | **181** | **2** |

## 📦 GitOps Status

All stacks across all endpoints now use canonical `hosts/` paths. Migration completed March 2026.

| Endpoint | Total Stacks | GitOps | Non-GitOps |
|----------|--------------|--------|------------|
| Atlantis | 24 | 24 | 0 |
| Calypso | 23 | 22 | 1 (gitea — bootstrap dependency) |
| Concord NUC | 11 | 11 | 0 |
| Homelab VM | 19 | 19 | 0 |
| RPi 5 | 4 | 4 | 0 |
| **Total** | **81** | **80** | **1** |

---

## 🏛️ Atlantis (DS1823xs+) - 51 Containers

### Media Stack (arr-stack)
| Container | Image | Status |
|-----------|-------|--------|
| plex | linuxserver/plex | ✅ running |
| tautulli | linuxserver/tautulli | ✅ running |
| sonarr | linuxserver/sonarr | ✅ running |
| radarr | linuxserver/radarr | ✅ running |
| lidarr | linuxserver/lidarr | ✅ running |
| bazarr | linuxserver/bazarr | ✅ running |
| prowlarr | linuxserver/prowlarr | ✅ running |
| whisparr | hotio/whisparr | ✅ running |
| jackett | linuxserver/jackett | ✅ running |
| jellyseerr | fallenbagel/jellyseerr | ✅ running |
| wizarr | wizarrrr/wizarr | ✅ running |
| sabnzbd | linuxserver/sabnzbd | ✅ running |
| deluge | linuxserver/deluge | ✅ running |
| gluetun | qmcgaw/gluetun | ✅ running |
| flaresolverr | flaresolverr/flaresolverr | ✅ running |
| tdarr | haveagitgat/tdarr | ✅ running |
| audiobookshelf | ghcr.io/advplyr/audiobookshelf | ✅ running |
| lazylibrarian | linuxserver/lazylibrarian | ✅ running |
| youtube_downloader | tzahi12345/youtubedl-material | ✅ running |

### Photo Management
| Container | Image | Status |
|-----------|-------|--------|
| Immich-SERVER | ghcr.io/immich-app/immich-server | ✅ running |
| Immich-LEARNING | ghcr.io/immich-app/immich-machine-learning | ✅ running |
| Immich-DB | postgres | ✅ running |
| Immich-REDIS | redis | ✅ running |

### Security & Auth
| Container | Image | Status |
|-----------|-------|--------|
| Vaultwarden | vaultwarden/server | ✅ running |
| Vaultwarden-DB | postgres | ✅ running |

### Communication
| Container | Image | Status |
|-----------|-------|--------|
| jitsi-web | jitsi/web | ✅ running |
| jitsi-prosody | jitsi/prosody | ✅ running |
| jitsi-jicofo | jitsi/jicofo | ✅ running |
| jitsi-jvb | jitsi/jvb | ✅ running |
| joplin-stack-app | joplin/server | ✅ running |
| joplin-stack-db | postgres | ✅ running |
| mautrix-signal | dock.mau.dev/mautrix/signal | ✅ running |
| coturn | instrumentisto/coturn | ✅ running |

### AI/ML
| Container | Image | Status |
|-----------|-------|--------|
| ollama | ollama/ollama | ✅ running |
| ollama-webui | ghcr.io/open-webui/open-webui | ✅ running |

### Dashboard & Tools
| Container | Image | Status |
|-----------|-------|--------|
| homarr | ghcr.io/homarr-labs/homarr | ✅ running |
| Fenrus | revenz/fenrus | ✅ running |
| it-tools | corentinth/it-tools | ✅ running |
| dokuwiki | linuxserver/dokuwiki | ✅ running |
| theme-park | ghcr.io/gilbn/theme.park | ✅ running |

### Infrastructure
| Container | Image | Status |
|-----------|-------|--------|
| portainer | portainer/portainer-ee | ✅ running |
| watchtower | containrrr/watchtower | ✅ running |
| node_exporter | prometheus/node-exporter | ✅ running |
| snmp_exporter | prometheus/snmp-exporter | ✅ running |
| syncthing | linuxserver/syncthing | ✅ running |
| baikal | ckulka/baikal | ✅ running |
| iperf3 | networkstatic/iperf3 | ✅ running |
| wgeasy | ghcr.io/wg-easy/wg-easy | ⚠️ exited |

### Dynamic DNS
| Container | Image | Status |
|-----------|-------|--------|
| ddns-thevish-proxied | favonia/cloudflare-ddns | ✅ running |
| ddns-thevish-unproxied | favonia/cloudflare-ddns | ✅ running |
| ddns-vish-proxied | favonia/cloudflare-ddns | ✅ running |

---

## 🏢 Calypso (DS723+) - 54 Containers

### Media Stack (arr-stack)
| Container | Image | Status |
|-----------|-------|--------|
| plex | linuxserver/plex | ✅ running |
| tautulli | linuxserver/tautulli | ✅ running |
| sonarr | linuxserver/sonarr | ✅ running |
| radarr | linuxserver/radarr | ✅ running |
| lidarr | linuxserver/lidarr | ✅ running |
| bazarr | linuxserver/bazarr | ✅ running |
| prowlarr | linuxserver/prowlarr | ✅ running |
| whisparr | hotio/whisparr | ✅ running |
| readarr | linuxserver/readarr | ✅ running |
| jellyseerr | fallenbagel/jellyseerr | ✅ running |
| sabnzbd | linuxserver/sabnzbd | ✅ running |
| flaresolverr | flaresolverr/flaresolverr | ✅ running |
| tdarr-node-calypso | haveagitgat/tdarr_node | ✅ running |

### Photo Management
| Container | Image | Status |
|-----------|-------|--------|
| Immich-SERVER | ghcr.io/immich-app/immich-server | ✅ running |
| Immich-LEARNING | ghcr.io/immich-app/immich-machine-learning | ✅ running |
| Immich-DB | postgres | ✅ running |
| Immich-REDIS | redis | ✅ running |

### Document Management
| Container | Image | Status |
|-----------|-------|--------|
| PaperlessNGX | ghcr.io/paperless-ngx/paperless-ngx | ✅ running |
| PaperlessNGX-AI | clusterzx/paperless-ai | ✅ running |
| PaperlessNGX-DB | postgres | ✅ running |
| PaperlessNGX-GOTENBERG | gotenberg/gotenberg | ✅ running |
| PaperlessNGX-REDIS | redis | ✅ running |
| PaperlessNGX-TIKA | apache/tika | ✅ running |

### Authentication (SSO)
| Container | Image | Status |
|-----------|-------|--------|
| Authentik-SERVER | ghcr.io/goauthentik/server | ✅ running |
| Authentik-WORKER | ghcr.io/goauthentik/server | ✅ running |
| Authentik-DB | postgres | ✅ running |
| Authentik-REDIS | redis | ✅ running |

### Development
| Container | Image | Status |
|-----------|-------|--------|
| Gitea | gitea/gitea | ✅ running |
| Gitea-DB | postgres | ✅ running |
| gitea-runner | gitea/act_runner | ✅ running |
| Resume-ACCESS | amruthpillai/reactive-resume | ✅ running |
| Resume-DB | postgres | ✅ running |
| Resume-MINIO | minio/minio | ✅ running |
| Resume-PRINTER | ghcr.io/browserless/chromium | ✅ running |
| retro-site | nginx | ✅ running |

### File Sync & Storage
| Container | Image | Status |
|-----------|-------|--------|
| Seafile | seafileltd/seafile-mc | ✅ running |
| Seafile-DB | mariadb | ✅ running |
| Seafile-CACHE | memcached | ✅ running |
| Seafile-REDIS | redis | ✅ running |
| syncthing | linuxserver/syncthing | ✅ running |
| Rustdesk-HBBR | rustdesk/rustdesk-server | ✅ running |
| Rustdesk-HBBS | rustdesk/rustdesk-server | ✅ running |

### Finance
| Container | Image | Status |
|-----------|-------|--------|
| Actual | actualbudget/actual-server | ✅ running |

### Infrastructure
| Container | Image | Status |
|-----------|-------|--------|
| nginx-proxy-manager | jc21/nginx-proxy-manager | ✅ running |
| AdGuard | adguard/adguardhome | ✅ running |
| wgeasy | ghcr.io/wg-easy/wg-easy | ✅ running |
| apt-cacher-ng | sameersbn/apt-cacher-ng | ✅ running |
| node_exporter | prometheus/node-exporter | ✅ running |
| snmp_exporter | prometheus/snmp-exporter | ✅ running |
| portainer_edge_agent | portainer/agent | ✅ running |
| watchtower | containrrr/watchtower | ✅ running |
| iperf3 | networkstatic/iperf3 | ✅ running |
| openspeedtest | openspeedtest/latest | ✅ running |
| Rackula | ghcr.io/rackulalives/rackula | ✅ running |

---

## 🖥️ Concord NUC - 19 Containers

### Home Automation
| Container | Image | Status |
|-----------|-------|--------|
| homeassistant | ghcr.io/home-assistant/home-assistant | ✅ running |
| matter-server | ghcr.io/home-assistant-libs/python-matter-server | ✅ running |
| openwakeword | rhasspy/wyoming-openwakeword | ✅ running |
| piper | rhasspy/wyoming-piper | ✅ running |
| whisper | rhasspy/wyoming-whisper | ✅ running |

### Media
| Container | Image | Status |
|-----------|-------|--------|
| plex | linuxserver/plex | ✅ running |
| invidious-stack-invidious | quay.io/invidious/invidious | ✅ running |
| invidious-stack-companion | quay.io/invidious/invidious-companion | ✅ running |
| invidious-stack-invidious-db | postgres | ✅ running |
| materialious | nginx | ✅ running |
| yourspotify-stack-server | yooooomi/your_spotify_server | ✅ running |
| yourspotify-stack-web | yooooomi/your_spotify_client | ✅ running |
| mongo | mongo | ✅ running |

### Infrastructure
| Container | Image | Status |
|-----------|-------|--------|
| AdGuard | adguard/adguardhome | ✅ running |
| wg-easy | ghcr.io/wg-easy/wg-easy | ✅ running |
| syncthing | linuxserver/syncthing | ✅ running |
| portainer_edge_agent | portainer/agent | ✅ running |
| watchtower | containrrr/watchtower | ✅ running |
| ddns-vish-13340 | favonia/cloudflare-ddns | ✅ running |

> **Note:** node_exporter runs on the host (systemd), not as a container

---

## 💻 Homelab VM - 36 Containers

### Monitoring & Alerting
| Container | Image | Status |
|-----------|-------|--------|
| grafana | grafana/grafana-oss | ✅ running |
| prometheus | prom/prometheus | ✅ running |
| alertmanager | prom/alertmanager | ✅ running |
| node_exporter | prom/node-exporter | ✅ running |
| snmp_exporter | prom/snmp-exporter | ✅ running |
| ntfy-bridge | python | ✅ running |
| signal-bridge | python | ✅ running |
| gitea-ntfy-bridge | python | ✅ running |

### Notifications
| Container | Image | Status |
|-----------|-------|--------|
| NTFY | binwiederhier/ntfy | ✅ running |
| signal-api | bbernhard/signal-cli-rest-api | ✅ running |

### Privacy Frontends
| Container | Image | Status |
|-----------|-------|--------|
| Redlib | quay.io/redlib/redlib | ✅ running |
| binternet | ghcr.io/ahwxorg/binternet | ✅ running |
| proxitok-web | ghcr.io/pablouser1/proxitok | ✅ running |
| proxitok-redis | redis | ✅ running |
| proxitok-chromedriver | robcherry/docker-chromedriver | ✅ running |

### Archiving & Bookmarks
| Container | Image | Status |
|-----------|-------|--------|
| archivebox | archivebox/archivebox | ✅ running |
| archivebox_scheduler | archivebox/archivebox | ✅ running |
| archivebox_sonic | archivebox/sonic | ✅ running |
| hoarder-karakeep-stack-web | ghcr.io/hoarder-app/hoarder | ✅ running |
| hoarder-karakeep-stack-chrome | gcr.io/zenika-hub/alpine-chrome | ✅ running |
| hoarder-karakeep-stack-meilisearch | getmeili/meilisearch | ✅ running |

### AI & Search
| Container | Image | Status |
|-----------|-------|--------|
| perplexica | itzcrazykns1337/perplexica | ✅ running |
| openhands-app | docker.openhands.dev/openhands/openhands | ✅ running |
| searxng | searxng/searxng | ✅ running |

### Infrastructure Management
| Container | Image | Status |
|-----------|-------|--------|
| netbox | linuxserver/netbox | ✅ running |
| netbox-db | postgres:16-alpine | ✅ running |
| netbox-redis | redis:7-alpine | ✅ running |
| semaphore | semaphoreui/semaphore | ✅ running |

### Collaboration
| Container | Image | Status |
|-----------|-------|--------|
| excalidraw | excalidraw/excalidraw | ✅ running |

### Utilities
| Container | Image | Status |
|-----------|-------|--------|
| Draw.io | jgraph/drawio | ✅ running |
| Web-Check | lissy93/web-check | ✅ running |
| WatchYourLAN | aceberg/watchyourlan | ✅ running |
| syncthing | linuxserver/syncthing | ✅ running |
| portainer_edge_agent | portainer/agent | ✅ running |
| watchtower | containrrr/watchtower | ✅ running |

---

## 🥧 RPi 5 - 3 Containers

| Container | Image | Status |
|-----------|-------|--------|
| uptime-kuma | louislam/uptime-kuma | ✅ running |
| glances | nicolargo/glances | ✅ running |
| portainer_edge_agent | portainer/agent | ✅ running |

> **Note:** watchtower and node_exporter run on the host (systemd), not as containers

---

## ⚠️ Issues Detected

1. **Atlantis** - `wgeasy` container is exited (Wireguard VPN)

---

## 📝 Notes

- This inventory was generated from live Portainer API data (2026-03-08)
- Container counts may vary as services are added/removed
- Some services share databases (e.g., multiple apps using same PostgreSQL)
- Edge agents report back to central Portainer on Atlantis
- **GitOps**: 80/81 stacks are managed via GitOps (git.vish.gg/Vish/homelab)
- **Non-GitOps exception**: gitea only (bootstrap dependency — it hosts the Git server itself)
- All stacks use canonical `hosts/` paths; legacy root-level symlinks (`Atlantis/`, `Calypso/`, etc.) no longer used in Portainer

### Host-Level Services (not containerized)

Some hosts run services directly on the OS rather than in containers:

| Host | Service | Port | Notes |
|------|---------|------|-------|
| **Concord NUC** | node_exporter | 9100 | Prometheus metrics |
| **RPi 5** | node_exporter | 9100 | Prometheus metrics |
| **RPi 5** | watchtower | - | Container auto-updates |
