Finalize Architecture two-table tables; include RESTORE.md; no further edits
This commit is contained in:
218
README.md
218
README.md
@@ -8,48 +8,46 @@ This infrastructure manages a comprehensive self-hosted environment including me
|
|||||||
|
|
||||||
### Internal Docker Services
|
### Internal Docker Services
|
||||||
|
|
||||||
| Service | Role / Component | Web UI Port | Notes |
|
| Service Categories | Service | Role / Component | Web UI Port |
|
||||||
|---|---|---:|---|
|
|---|---|---|---|
|
||||||
| Jellyfin | Media server with hardware transcoding | 8096 | - |
|
| Media & Arr Stack | Jellyfin | Media server with hardware transcoding | 8096 |
|
||||||
| Jellyseerr | Media request management | 5055 | - |
|
| Media & Arr Stack | Jellyseerr | Media request management | 5055 |
|
||||||
| Radarr | Movie management | 7878 | - |
|
| Media & Arr Stack | Radarr | Movie management | 7878 |
|
||||||
| Sonarr | TV show management | 8989 | - |
|
| Media & Arr Stack | Sonarr | TV show management | 8989 |
|
||||||
| Lidarr | Music management | 8686 | - |
|
| Media & Arr Stack | Lidarr | Music management | 8686 |
|
||||||
| Bazarr | Subtitle management | 6767 | - |
|
| Media & Arr Stack | Bazarr | Subtitle management | 6767 |
|
||||||
| Prowlarr | Indexer manager | 9696 | - |
|
| Media & Arr Stack | Prowlarr | Indexer manager | 9696 |
|
||||||
| qBittorrent | Download client | 7070 | - |
|
| Media & Arr Stack | qBittorrent | Download client | 7070 |
|
||||||
| Paperless | Document management interface | 8100 | - |
|
| Data Management | Paperless | Document management interface | 8100 |
|
||||||
| Stirling-PDF | PDF manipulation tools | 8090 | - |
|
| Data Management | Stirling-PDF | PDF manipulation tools | 8090 |
|
||||||
| OnlyOffice | Document collaboration server | 8091 | - |
|
| Data Management | OnlyOffice | Document collaboration server | 8091 |
|
||||||
| Open WebUI | LLM interface | 3000 | - |
|
| Open WebUI | LLM interface | 3000 |
|
||||||
| Immich | Photo management | 2283 | - |
|
| Data Management | Immich | Photo management | 2283 |
|
||||||
| Syncthing | File synchronization | 8384 | - |
|
| Data Management | Syncthing | File synchronization | 8384 |
|
||||||
| Gitea | Git service | 8418 | - |
|
| Management & Infrastructure | Gitea | Git service | 8418 |
|
||||||
| GrampsWeb Jamie | Genealogy UI | 5511 | - |
|
| GrampsWeb Jamie | Genealogy UI | 5511 |
|
||||||
| GrampsWeb Helen | Genealogy UI | 5512 | - |
|
| GrampsWeb Helen | Genealogy UI | 5512 |
|
||||||
| Speedtest Tracker | Network performance | 8180 | - |
|
| Speedtest Tracker | Network performance | 8180 |
|
||||||
| NPM Admin | NPM admin UI | 81 | - |
|
| Management & Infrastructure | NPM Admin | NPM admin UI | 81 |
|
||||||
| Maloja | Music scrobbling | 42010 | - |
|
| Data Management | Maloja | Music scrobbling | 42010 |
|
||||||
| Multi-Scrobbler | Cross-platform scrobbler | 9078 | - |
|
| Data Management | Multi-Scrobbler | Cross-platform scrobbler | 9078 |
|
||||||
| WYGIWYH | Financial tracking | 9008 | - |
|
| Data Management | WYGIWYH | Financial tracking | 9008 |
|
||||||
| Portainer | Container management UI | 9443 | - |
|
| Management & Infrastructure | Portainer | Container management UI | 9443 |
|
||||||
| Homepage | Service dashboard | 7575 | - |
|
| Management & Infrastructure | Homepage | Service dashboard | 7575 |
|
||||||
|
|
||||||
### External Non-Docker Services
|
### External Non-Docker Services
|
||||||
|
|
||||||
| Service | IP | Role / Description | Web UI Port | Notes |
|
| Service Categories| Service | Role / Description | Web UI Port |
|
||||||
|---|---|---|---:|---|
|
|---|---|---|---|
|
||||||
| npm (Nginx Proxy Manager) | 192.168.0.10 | Web UI; admin: 81 | 80/443 | - |
|
| Management & Infrastructure | adguard | DNS/ad-blocking | 3000 |
|
||||||
| adguard | 192.168.0.11 | DNS/ad-blocking | 3000 | - |
|
| Data Management | vaultwarden | Password manager | 80/8080 |
|
||||||
| vaultwarden | 192.168.0.12 | Password manager | 80/8080 | - |
|
| Entertainment | crafty (Crafty Controller) | Minecraft server management | 3000 |
|
||||||
| crafty (Crafty Controller) | 192.168.0.13 | Minecraft server management | 3000 | - |
|
| Data Management | nextcloud | File sync and collaboration | 443 |
|
||||||
| nextcloud | 192.168.0.14 | File sync and collaboration | 443 | - |
|
| Automation | homeassistant | Home automation | 8123 |
|
||||||
| homeassistant | 192.168.0.15 | Home automation | 8123 | - |
|
| Entertainment | foundryvtt | Foundry VTT | 30000 |
|
||||||
| foundryvtt | 192.168.0.16 | Foundry VTT | 30000 | - |
|
| Data Management | openmediavault | NAS management | 80/443 |
|
||||||
| openmediavault | 192.168.0.17 | NAS management | 80/443 | - |
|
| Website Hosting | wordpress-irodori | WordPress site | 80 |
|
||||||
| wordpress-irodori | 192.168.0.18 | WordPress site | 80 | - |
|
| Website Hosting | wordpress-dustin | WordPress site | 80 |
|
||||||
| wordpress-dustin | 192.168.0.19 | WordPress site | 80 | - |
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
### Network Segmentation
|
### Network Segmentation
|
||||||
@@ -59,70 +57,6 @@ This infrastructure manages a comprehensive self-hosted environment including me
|
|||||||
- **web_net**: Web-accessible services
|
- **web_net**: Web-accessible services
|
||||||
- **internal_net**: Internal service communication
|
- **internal_net**: Internal service communication
|
||||||
|
|
||||||
### Service Categories
|
|
||||||
|
|
||||||
#### Management & Infrastructure
|
|
||||||
- Glances: System monitoring dashboard
|
|
||||||
- Portainer: Container management UI
|
|
||||||
- Watchtower: Automatic container updates
|
|
||||||
- Homepage: Service dashboard
|
|
||||||
- Docker Proxy: Secure Docker socket proxy
|
|
||||||
- Nginx Proxy Manager (NPM): Reverse proxy with SSL
|
|
||||||
|
|
||||||
#### Media & Arr Stack
|
|
||||||
- Prowlarr: Indexer manager
|
|
||||||
- Radarr: Movie management
|
|
||||||
- Sonarr: TV show management
|
|
||||||
- Lidarr: Music management
|
|
||||||
- Bazarr: Subtitle management
|
|
||||||
- Jellyseerr: Media request management
|
|
||||||
- Jellyfin: Media server with hardware transcoding
|
|
||||||
- qBittorrent: Download client
|
|
||||||
- Flaresolverr: Cloudflare bypass
|
|
||||||
- Slskd: Soulsearch client
|
|
||||||
- Soulsync: Music sync automation
|
|
||||||
|
|
||||||
#### Document & AI Suite
|
|
||||||
- Paperless-ngx: Document management system
|
|
||||||
- MariaDB database
|
|
||||||
- Redis broker
|
|
||||||
- Tika for text extraction
|
|
||||||
- Gotenberg for PDF rendering
|
|
||||||
- Paperless-AI: AI-powered document analysis
|
|
||||||
- OnlyOffice: Document collaboration server
|
|
||||||
- Stirling-PDF: PDF manipulation tools
|
|
||||||
- Open WebUI: LLM interface
|
|
||||||
- LiteLLM: LLM proxy/gateway with PostgreSQL
|
|
||||||
|
|
||||||
#### Photo & Data Management
|
|
||||||
- Immich: Photo management and backup
|
|
||||||
- PostgreSQL with vector extensions
|
|
||||||
- Redis cache
|
|
||||||
- SSD/NAS storage for thumbnails/profiles and full resolution
|
|
||||||
- Syncthing: File synchronization (Obsidian vaults)
|
|
||||||
|
|
||||||
#### Development
|
|
||||||
- Gitea: Self-hosted Git service with MySQL
|
|
||||||
|
|
||||||
#### Genealogy
|
|
||||||
- GrampsWeb: Web interface for genealogy research
|
|
||||||
- Two instances: Jamie and Helen family trees
|
|
||||||
- Shared Redis broker
|
|
||||||
|
|
||||||
#### Utilities
|
|
||||||
- Speedtest Tracker: Network performance monitoring with MariaDB
|
|
||||||
- RustDesk: Remote desktop (hbbs + hbbr servers)
|
|
||||||
- RedBot: Discord bot
|
|
||||||
- iperf3: Network performance testing
|
|
||||||
- Newt: Custom application
|
|
||||||
|
|
||||||
#### Finance
|
|
||||||
- WYGIWYH: Financial tracking with PostgreSQL
|
|
||||||
|
|
||||||
#### Music & Scrobbling
|
|
||||||
- Maloja: Music scrobbling server
|
|
||||||
- Multi-Scrobbler: Cross-platform scrobbler
|
|
||||||
|
|
||||||
## Storage Structure
|
## Storage Structure
|
||||||
|
|
||||||
### Local Docker Configs (`/docker/`)
|
### Local Docker Configs (`/docker/`)
|
||||||
@@ -247,34 +181,6 @@ REDBOT_TOKEN=your_discord_bot_token
|
|||||||
docker compose up -d
|
docker compose up -d
|
||||||
```
|
```
|
||||||
|
|
||||||
## Service Access
|
|
||||||
|
|
||||||
Default ports (configure reverse proxy for SSL/domains):
|
|
||||||
|
|
||||||
- Homepage: 7575
|
|
||||||
- Portainer: 9443
|
|
||||||
- Jellyfin: 8096
|
|
||||||
- Radarr: 7878
|
|
||||||
- Sonarr: 8989
|
|
||||||
- Prowlarr: 9696
|
|
||||||
- Lidarr: 8686
|
|
||||||
- Bazarr: 6767
|
|
||||||
- Jellyseerr: 5055
|
|
||||||
- qBittorrent: 7070
|
|
||||||
- Paperless: 8100
|
|
||||||
- Stirling-PDF: 8090
|
|
||||||
- OnlyOffice: 8091
|
|
||||||
- Open WebUI: 3000
|
|
||||||
- Immich: 2283
|
|
||||||
- Syncthing: 8384
|
|
||||||
- Gitea: 8418
|
|
||||||
- GrampsWeb Jamie: 5511
|
|
||||||
- GrampsWeb Helen: 5512
|
|
||||||
- Speedtest Tracker: 8180
|
|
||||||
- NPM Admin: 81
|
|
||||||
- Maloja: 42010
|
|
||||||
- Multi-Scrobbler: 9078
|
|
||||||
|
|
||||||
## Maintenance
|
## Maintenance
|
||||||
|
|
||||||
### Backup Strategy
|
### Backup Strategy
|
||||||
@@ -286,7 +192,6 @@ Default ports (configure reverse proxy for SSL/domains):
|
|||||||
|
|
||||||
**Optional (can be regenerated):**
|
**Optional (can be regenerated):**
|
||||||
- Media files on NAS
|
- Media files on NAS
|
||||||
- Immich thumbnails (can be regenerated)
|
|
||||||
|
|
||||||
### Updates
|
### Updates
|
||||||
|
|
||||||
@@ -361,55 +266,6 @@ docker system df
|
|||||||
docker system prune -a
|
docker system prune -a
|
||||||
```
|
```
|
||||||
|
|
||||||
## Internal Docker Services\n\n| 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\n\n| Service | IP | Role / Description | Web UI Port | Notes |\n|---|---|---|---:|---|\n| npm (Nginx Proxy Manager) | 192.168.0.10 | Web UI; admin: 81 | 80/443 | - |\n| adguard | 192.168.0.11 | DNS/ad-blocking | 3000 | - |\n| vaultwarden | 192.168.0.12 | Password manager | 80/8080 | - |\n| crafty (Crafty Controller) | 192.168.0.13 | Minecraft server management | 3000 | - |\n| nextcloud | 192.168.0.14 | File sync and collaboration | 443 | - |\n| homeassistant | 192.168.0.15 | Home automation | 8123 | - |\n| foundryvtt | 192.168.0.16 | Foundry VTT | 30000 | - |\n| openmediavault | 192.168.0.17 | NAS management | 80/443 | - |\n| wordpress-irodori | 192.168.0.18 | WordPress site | 80 | - |\n| wordpress-dustin | 192.168.0.19 | WordPress site | 80 | - |\n\nIf you want, I can tighten these with exact ports from your Proxmox/VM configs and add links to each service's docs.\n\n## Migration/Restoration
|
|
||||||
|
|
||||||
Your homelab includes a number of LXCs/VMs outside Docker. This section documents their host IPs, brief descriptions, and typical access ports. Verify in your Proxmox/VM configs.
|
|
||||||
|
|
||||||
- npm (Nginx Proxy Manager) — 192.168.0.10 — Web UI and reverse proxy management; typical host ports: 80/443, admin: 81
|
|
||||||
- adguard (AdGuard Home) — 192.168.0.11 — DNS/ad-blocking; UI: 3000
|
|
||||||
- vaultwarden (Vaultwarden) — 192.168.0.12 — Password manager; UI: 80/8080
|
|
||||||
- crafty (Crafty Controller) — 192.168.0.13 — Home automation central
|
|
||||||
- nextcloud — 192.168.0.14 — File sync and collaboration; UI: 443
|
|
||||||
- homeassistant — 192.168.0.15 — Home automation; UI: 8123
|
|
||||||
- foundryvtt — 192.168.0.16 — Foundry VTT; UI: 30000
|
|
||||||
- openmediavault (OMV) — 192.168.0.17 — NAS management; UI: 80/443
|
|
||||||
- wordpress-irodori — 192.168.0.18 — WordPress site; UI: 80
|
|
||||||
- wordpress-dustin — 192.168.0.19 — WordPress site; UI: 80
|
|
||||||
|
|
||||||
1. Install Docker and Docker Compose on new system
|
|
||||||
2. Restore `/docker/` directory structure
|
|
||||||
3. Restore `.env` file
|
|
||||||
4. Restore database volumes
|
|
||||||
5. Mount NAS storage at `/mnt/Nas-Storage/data/`
|
|
||||||
6. Run `docker compose up -d`
|
|
||||||
|
|
||||||
## Contributing Services
|
## Contributing Services
|
||||||
|
|
||||||
To add new services:
|
To add new services:
|
||||||
|
|||||||
Reference in New Issue
Block a user