Docs: consolidate service inventories into two tables; flatten narrative; Crafty Controller; update Last Updated

This commit is contained in:
Jamie Miller
2026-01-10 12:28:59 +00:00
parent a97febcc20
commit 63faf3c5d9
2 changed files with 70 additions and 9 deletions

View File

@@ -6,6 +6,52 @@ This infrastructure manages a comprehensive self-hosted environment including me
## Architecture
### Internal Docker Services
| Service | Role / Component | Web UI Port | Notes |
|---|---|---:|---|
| Jellyfin | Media server with hardware transcoding | 8096 | - |
| Jellyseerr | Media request management | 5055 | - |
| Radarr | Movie management | 7878 | - |
| Sonarr | TV show management | 8989 | - |
| Lidarr | Music management | 8686 | - |
| Bazarr | Subtitle management | 6767 | - |
| Prowlarr | Indexer manager | 9696 | - |
| qBittorrent | Download client | 7070 | - |
| Paperless | Document management interface | 8100 | - |
| Stirling-PDF | PDF manipulation tools | 8090 | - |
| OnlyOffice | Document collaboration server | 8091 | - |
| Open WebUI | LLM interface | 3000 | - |
| Immich | Photo management | 2283 | - |
| Syncthing | File synchronization | 8384 | - |
| Gitea | Git service | 8418 | - |
| GrampsWeb Jamie | Genealogy UI | 5511 | - |
| GrampsWeb Helen | Genealogy UI | 5512 | - |
| Speedtest Tracker | Network performance | 8180 | - |
| NPM Admin | NPM admin UI | 81 | - |
| Maloja | Music scrobbling | 42010 | - |
| Multi-Scrobbler | Cross-platform scrobbler | 9078 | - |
| WYGIWYH | Financial tracking | 9008 | - |
| Portainer | Container management UI | 9443 | - |
| Homepage | Service dashboard | 7575 | - |
### External Non-Docker Services
| Service | IP | Role / Description | Web UI Port | Notes |
|---|---|---|---:|---|
| npm (Nginx Proxy Manager) | 192.168.0.10 | Web UI; admin: 81 | 80/443 | - |
| adguard | 192.168.0.11 | DNS/ad-blocking | 3000 | - |
| vaultwarden | 192.168.0.12 | Password manager | 80/8080 | - |
| crafty (Crafty Controller) | 192.168.0.13 | Minecraft server management | 3000 | - |
| nextcloud | 192.168.0.14 | File sync and collaboration | 443 | - |
| homeassistant | 192.168.0.15 | Home automation | 8123 | - |
| foundryvtt | 192.168.0.16 | Foundry VTT | 30000 | - |
| openmediavault | 192.168.0.17 | NAS management | 80/443 | - |
| wordpress-irodori | 192.168.0.18 | WordPress site | 80 | - |
| wordpress-dustin | 192.168.0.19 | WordPress site | 80 | - |
### Network Segmentation
- **media_net**: Media services and *arr applications

View File

@@ -345,6 +345,23 @@ services:
logging: *default-logging
# --- DOCUMENT & AI SUITE ---
onlyoffice:
image: onlyoffice/documentserver:latest
container_name: onlyoffice-docs
restart: always
ports:
- "8091:80"
environment:
- JWT_ENABLED=true
- JWT_SECRET=${OO_JWT_SECRET}
- JWT_HEADER=Authorization
- ALLOW_PRIVATE_IP_ADDRESS=true
- USE_UNAUTHORIZED_STORAGE=true
volumes:
- docker_onlyoffice:/var/lib/onlyoffice
- docker_onlyoffice:/var/www/onlyoffice/Data
- docker_onlyoffice:/var/log/onlyoffice
paperless-db:
image: mariadb:11
container_name: paperless-db
@@ -539,13 +556,12 @@ services:
- UPLOAD_LOCATION=/data
volumes:
# LOCAL (SSD) - Config, Thumbs, Profile, and Backups
- /docker/immich/library/thumbs:/usr/src/app/upload/thumbs
- /docker/immich/library/profile:/usr/src/app/upload/profile
- /docker/immich/library/backups:/usr/src/app/upload/backups
# NAS (HDD) - High Resolution Library & Uploads
- /mnt/Nas-Storage/data/media/images/library:/usr/src/app/upload/library
- /mnt/Nas-Storage/data/media/images/upload:/usr/src/app/upload/upload
- /mnt/Nas-Storage/data/media/images/encoded-video:/usr/src/app/upload/encoded-video
- /docker/immich:/usr/src/app/upload/library
- /docker/immich/thumbs:/usr/src/app/upload/thumbs
- /docker/immich/profile:/usr/src/app/upload/profile
- /docker/immich/backups:/usr/src/app/upload/backups
- /docker/immich/encoded-video:/usr/src/app/upload/encoded-video
- /docker/immich/upload:/usr/src/app/upload/upload
depends_on:
immich-postgres:
condition: service_healthy
@@ -784,6 +800,7 @@ services:
# --- APP SETTINGS ---
- SECRET_KEY=${WYGIWYH_SECRET_KEY}
- DJANGO_ALLOWED_HOSTS=${WYGIWYH_ALLOWED_HOSTS}
- CSRF_TRUSTED_ORIGINS=${WYGIWYH_CSRF_TRUSTED_ORIGINS}
- WYGIWYH_URL=${WYGIWYH_URL}
networks:
- web_net
@@ -835,8 +852,6 @@ services:
- /docker/scrobble/config:/config
logging: *default-logging
networks:
media_net:
name: media_net