245 lines
7.8 KiB
Markdown
245 lines
7.8 KiB
Markdown
# Main Server (192.168.1.252) Documentation
|
|
|
|
_Last updated: 2026-01-05_
|
|
|
|
---
|
|
|
|
## Server Overview
|
|
|
|
This is the **primary Docker infrastructure server** running at **192.168.1.252**. It hosts the majority of media services, custom applications, and core infrastructure components.
|
|
|
|
**Primary Role:** Main Docker host for media management, productivity apps, and custom applications
|
|
|
|
**Key Functions:**
|
|
- **Media Management:** Complete Arr stack (Sonarr, Radarr, Lidarr, Readarr, Prowlarr, Bazarr)
|
|
- **Media Servers:** Emby, Jellyfin, Audiobookshelf, Channels DVR, Navidrome
|
|
- **Custom Applications:** Books V2, SpeedRacer, Store Matching, Mixarr
|
|
- **Infrastructure:** Traefik reverse proxy, Homepage dashboard, Watchtower, Autoscan
|
|
- **Productivity:** Mealie, Immich, Silverbullet
|
|
- **Monitoring:** Karakeep, Web-Check
|
|
- **Utilities:** Subgen, Vert, Termix
|
|
|
|
---
|
|
|
|
## Server Specifications
|
|
|
|
- **IP Address:** 192.168.1.252
|
|
- **Working Directory:** /mnt/docker-storage/appdata
|
|
- **Additional Directory:** /home/maddox/docker/appdata
|
|
- **Operating System:** Linux 6.8.0-90-generic
|
|
- **Container Runtime:** Docker with Docker Compose
|
|
- **Reverse Proxy:** Traefik (configured on 192.168.12.3, routes to this server)
|
|
- **Total Services:** 60+ containerized services
|
|
|
|
---
|
|
|
|
## Documentation Structure
|
|
|
|
All detailed documentation for this server is located in the parent `docs/` directory:
|
|
|
|
### Core Documentation
|
|
|
|
- **[Service Inventory](../00-service-inventory.md)**: Complete inventory of all Docker services running on this server
|
|
- **[Network Architecture](../01-network-architecture.md)**: Networking setup, Docker networks, Traefik, and DNS
|
|
- **[Database Documentation](../02-databases.md)**: All databases including external MariaDB and containerized databases
|
|
- **[Traefik Routing Reference](../03-traefik-routes.md)**: Quick reference for all Traefik routes
|
|
- **[Environment Variables Reference](../04-environment-variables.md)**: Environment variables used by services
|
|
- **[Backup and Restore Procedures](../05-backup-restore.md)**: Backup and restore instructions
|
|
- **[Troubleshooting Guide](../06-troubleshooting.md)**: Common issues and solutions
|
|
- **[Development Quick Reference](../07-dev-quick-reference.md)**: Development tasks cheat sheet
|
|
- **[Security and Secrets](../08-security.md)**: Security mechanisms and secrets management
|
|
|
|
### Application Documentation
|
|
|
|
- **[Books V2](../apps/books-v2.md)**: Full-stack book library manager
|
|
- **[Mixarr](../apps/mixarr.md)**: AI-powered music discovery for Lidarr
|
|
|
|
---
|
|
|
|
## Key Service Categories
|
|
|
|
### Media Automation (Arr Stack)
|
|
|
|
- **Sonarr** - TV show automation
|
|
- **Radarr** - Movie automation
|
|
- **Lidarr** - Music automation
|
|
- **Readarr** - Book automation
|
|
- **Prowlarr** - Indexer management
|
|
- **Bazarr** - Subtitle automation
|
|
- **Mixarr** - AI-powered music discovery
|
|
|
|
### Media Servers
|
|
|
|
- **Emby** - Primary media server (TV, movies, music)
|
|
- **Jellyfin** - Alternative media server
|
|
- **Audiobookshelf** - Audiobook and podcast server
|
|
- **Channels DVR** - Live TV and DVR
|
|
- **Navidrome** - Music streaming server
|
|
|
|
### Custom Applications
|
|
|
|
- **Books V2** - React + FastAPI book library manager
|
|
- **SpeedRacer** - Running performance tracker
|
|
- **Store Matching** - Store list matching application
|
|
- **Mixarr** - Music discovery with LLM integration
|
|
|
|
### Infrastructure
|
|
|
|
- **Traefik** - Reverse proxy with SSL/TLS (runs on 192.168.12.3)
|
|
- **Homepage** - Service dashboard
|
|
- **Watchtower** - Automatic container updates
|
|
- **Autoscan** - Automated media library scanning
|
|
- **Tailscale** - Mesh VPN
|
|
|
|
### Productivity
|
|
|
|
- **Mealie** - Recipe management
|
|
- **Immich** - Photo management and backup
|
|
- **Silverbullet** - Personal knowledge base (this documentation!)
|
|
|
|
### Monitoring & Utilities
|
|
|
|
- **Karakeep** - Bookmark manager
|
|
- **Web-Check** - Website analysis tool
|
|
- **Subgen** - AI subtitle generation (Whisper)
|
|
- **Vert** - File conversion utility
|
|
- **Termix** - Terminal sharing
|
|
|
|
---
|
|
|
|
## Database Infrastructure
|
|
|
|
### External MariaDB (192.168.1.251:3306)
|
|
|
|
- **node** - Store matching application database
|
|
- **books_v2** - Books V2 application database
|
|
|
|
**Important:** As of January 2026, database replication to the secondary server (192.168.12.3) has been **disabled**. All applications connect directly to the primary server.
|
|
|
|
### Containerized Databases
|
|
|
|
- **Mixarr MySQL** - MySQL 8.0 for Mixarr music discovery data
|
|
- **Immich PostgreSQL** - PostgreSQL with vector support for photo search
|
|
- **Mealie PostgreSQL** - PostgreSQL for recipe data
|
|
- **Various Redis** - Session and cache storage for multiple services
|
|
|
|
### SQLite Databases
|
|
|
|
Many services use SQLite for local storage:
|
|
- Audiobookshelf, Bazarr, Lidarr, Prowlarr, Radarr, Readarr, Sonarr, Jellyseerr, Watchstate, Karakeep, ArchiveForge
|
|
|
|
See [Database Documentation](../02-databases.md) for complete details.
|
|
|
|
---
|
|
|
|
## Network Configuration
|
|
|
|
### Docker Networks
|
|
|
|
- **traefik_proxy** - External network shared with Traefik (on 192.168.12.3)
|
|
- Multiple service-specific internal networks for isolation
|
|
|
|
### Traefik Configuration
|
|
|
|
Traefik runs on the **Hetzner server (192.168.12.3)** and routes traffic to services on this server.
|
|
|
|
Configuration managed via:
|
|
- Central Traefik config file: `~/dyno.yml` (on 192.168.12.3)
|
|
- Web interface: Traefik Configuration Manager (tm.3ddbrewery.com)
|
|
|
|
Services are accessed via:
|
|
- `*.3ddbrewery.com` - Primary domain
|
|
- `*.fails.me` - Secondary domain
|
|
|
|
---
|
|
|
|
## Access & Domains
|
|
|
|
All services are accessed through Traefik reverse proxy with automatic HTTPS:
|
|
|
|
**Examples:**
|
|
- Books: `books.3ddbrewery.com`
|
|
- Mixarr: `mixarr.3ddbrewery.com` (web), `api.mixarr.3ddbrewery.com` (API)
|
|
- Emby: `m.3ddbrewery.com`, `tv.3ddbrewery.com`
|
|
- Sonarr: `sonarr.3ddbrewery.com`
|
|
- Homepage: `h.3ddbrewery.com`
|
|
|
|
Authentication handled by **Authentik** (running on 192.168.12.3) for most services.
|
|
|
|
---
|
|
|
|
## Important Notes
|
|
|
|
### Storage Volumes
|
|
|
|
- **/mnt/docker-storage/appdata** - Primary application data directory
|
|
- **/home/maddox/docker/appdata** - Additional application directory
|
|
- **/volume1/Media** - Media files (NAS mount)
|
|
- **/volume1/Downloads** - Download staging area
|
|
- **/volume1/archive** - Archive storage
|
|
|
|
### Container Management
|
|
|
|
- **Watchtower** handles automatic updates for most containers
|
|
- Some containers have updates disabled (books_webv2, store-matching, speedracer)
|
|
- Use `docker-compose` commands within service directories for manual management
|
|
|
|
### Port Conflicts
|
|
|
|
Port 3000 is used by Books V2 frontend, which is why Mixarr web uses port 3006.
|
|
|
|
---
|
|
|
|
## Multi-Server Infrastructure
|
|
|
|
This server works in conjunction with the **Hetzner Server (192.168.12.3)**:
|
|
|
|
- **Hetzner Server** runs: Traefik, Authentik SSO, MariaDB replica, Firefly III, Node-RED
|
|
- **This Server** runs: All media services, custom apps, productivity tools
|
|
- Both servers connected via **Tailscale mesh VPN**
|
|
- Traefik on Hetzner routes to services on this server
|
|
|
|
See [Hetzner Server Documentation](../servers/hetzner/README.md) for the companion server.
|
|
|
|
---
|
|
|
|
## Quick Reference
|
|
|
|
### Common Commands
|
|
|
|
```bash
|
|
# Navigate to service directory
|
|
cd /mnt/docker-storage/appdata/[service-name]
|
|
|
|
# Start service
|
|
docker-compose up -d
|
|
|
|
# View logs
|
|
docker-compose logs -f
|
|
|
|
# Restart service
|
|
docker-compose restart
|
|
|
|
# Stop service
|
|
docker-compose down
|
|
```
|
|
|
|
### Key Files
|
|
|
|
- `/mnt/docker-storage/appdata/CLAUDE.md` - Main project documentation
|
|
- `/mnt/docker-storage/appdata/all_containers.txt` - List of all containers
|
|
- Individual service directories contain `docker-compose.yml` files
|
|
|
|
### Getting Help
|
|
|
|
- Check the [Troubleshooting Guide](../06-troubleshooting.md)
|
|
- Review service-specific CLAUDE.md files in service directories
|
|
- Examine container logs: `docker-compose logs -f [service]`
|
|
|
|
---
|
|
|
|
## See Also
|
|
|
|
- [Hetzner Server (192.168.12.3)](../servers/hetzner/README.md) - Companion server documentation
|
|
- [Application Documentation](../apps/) - Detailed docs for custom applications
|
|
- [Service Inventory](../00-service-inventory.md) - Complete service listing
|