VPS
Appearance
VPS Docker Infrastructure Documentation
This document provides a comprehensive overview of the Docker-based infrastructure running on this VPS.
System Overview
Host System: Debian GNU/Linux 12 (bookworm)
Kernel: Linux 6.1.0-37-cloud-amd64
Hostname: ejfvps
Architecture: x86_64
CPU: Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz (2 cores)
Memory: 3.8GB RAM
Storage:
- Root: 7.8GB (/dev/vda1)
- Data: 20GB (/dev/vdb1)
- Data2: 49GB (/dev/vdc)
Core Infrastructure Services
Reverse Proxy & SSL
- Caddy - Modern web server with automatic HTTPS
- Port: 80/443
- Config: /etc/caddy/Caddyfile
- Features: Automatic SSL certificates, HTTP/2, reverse proxy
Container Orchestration
- Docker Engine - Container runtime
- Docker Compose - Multi-container application definitions
- Containerd - Low-level container runtime
System Monitoring
- Cloudflared - Cloudflare tunnel service
- Fail2ban - Intrusion prevention system
- Monit - System monitoring daemon
Application Stack
Analytics & Monitoring
Umami Analytics
Primary Instance:
- Image: ghcr.io/umami-software/umami:postgresql-latest
Grafana Monitoring Stack
- Grafana - Visualization dashboard
- Image: grafana/grafana:latest
- Plugins: ClickHouse, GitHub, Loki Explorer, Pyroscope, JSON datasource
- Loki - Log aggregation system
- Image: grafana/loki:latest
Uptime Monitoring
- Uptime Kuma - Self-hosted monitoring tool
- Image: louislam/uptime-kuma:latest
- Base URL: https://status.tools.ejfox.com
- Features: Website monitoring, notifications, status pages
Content Management
MediaWiki
- Image: mediawiki:latest
- Port: 8437 → 80
- Database: SQLite (multiple databases)
- Extensions: AWS S3 integration
- Skin: Citizen theme
- Volumes:
- Data: /home/debian/mediawiki/data
- Config: /home/debian/mediawiki/LocalSettings.php
ArchiveBox
- Image: archivebox/archivebox:latest
- Features: Web archiving, full-text search via Sonic
- Components:
- Main archiver
- Background scheduler (ofelia-based)
- Sonic search backend
- noVNC remote browser control
Development & Automation
Smallweb
- Image: ghcr.io/pomdtr/smallweb:latest
- Ports: 7777, 2222
- Purpose: Lightweight web app hosting platform
- Projects: Multiple TypeScript/Deno applications including:
- Health dashboard and webhooks
- GitHub integrations
- Location tracking
- Screenshot generation
- Weather apps
- Mastodon integration
n8n Workflow Automation
- Image: docker.n8n.io/n8nio/n8n
Retroscope
- Custom Application - retroscope
- Scheduler: mcuadros/ofelia:latest
- Status: Healthy, with background job scheduling
Personal Websites
ejfox.com
- Custom Build - ejfoxcom_ejfox
- Port: 3013 → 3013
- Size: 1.84GB image
- Status: Production website
room302.studio
- Custom Build - website_room302
- Port: 3012 → 3012
- Size: 1.82GB image
- Status: Secondary website
Network Configuration
Backup Strategy
- MediaWiki has backup/restore scripts
- Database files stored in persistent volumes
- Configuration files version controlled
Process Management
PM2
- PM2 modules: Auto-pull, log rotation
- Stopped processes: Discord bot, capabilities service
- Log management: Automated log rotation