At a Glance
Monitor
monitor.puntopio.com
Uptime Kuma Β· 11 services
Containers
50+
Docker Β· managed via Portainer
Reverse Proxy
Caddy 2
caddy-punto-pio Β· 20+ domains
Automation
n8n
hub.puntopio.com Β· WooCommerce
Tailscale IP
100.106.6.41
Mesh VPN access
Notifications
Discord + Pushover
Spidey Bot Β· all monitors
πͺ Commerce & Automation
WooCommerce main store. Order webhooks trigger n8n automations.
Workflow automation: orders β Google Contacts/Calendar β notifications. PostgreSQL backend.
React app for delivery drivers. GPS tracking, active orders, submission.
Punto Pio market point-of-sale system.
π Websites & Apps
Main portfolio/brand site. WordPress.
Next.js marketplace app. Postgres 16 backend.
VIP Silkie adopter portal.
Giveaway / contest landing page.
Slide deck presentation app.
Receipt generation and management. Postgres 15 backend.
π΅ Media & Tools
Music streaming server. Subsonic-compatible. Supports large DJ sets (up to 600s timeout).
Music streaming frontend + Python backend.
Custom QR code generator service.
Seedbox / torrent client.
Self-hosted speed test. Container not currently running β needs setup.
π Analytics & GTM
Server-side Google Tag Manager for puntopio.com tracking.
Server-side GTM for mercadomiramar.com.
Analytics tracker endpoint for GTM / mando-core.
βοΈ Operations & Monitoring
Status monitoring for all services. Alerts via Discord (Spidey Bot) + Pushover. 11 monitors configured.
Docker container management UI. All 50+ containers visible here.
Metrics dashboards. Connected to Prometheus + Node Exporter.
Mail server. Webmail interface also available.
π DNS Map β All Domains
| Domain |
Service |
Upstream |
Notes |
| puntopio.com | Punto Pio Store | external WooCommerce | Main e-commerce |
| hub.puntopio.com | n8n Automation | n8n-punto-pio:5678 | Automation hub |
| dale.puntopio.com | Delivery Dashboard | /var/www/dashboard | Static React app |
| monitor.puntopio.com | Uptime Kuma | uptime_kuma:3001 | Status monitoring |
| ops.puntopio.com | Portainer | portainer:9000 | Container mgmt |
| mascan.puntopio.com | GTM β PuntoPio | gtm-mascan-puntopio-com-core:3000 | Server-side GTM |
| gana.puntopio.com | Contest Site | 154.53.46.48:3002 | Giveaway page |
| mando.works | Mando Works | mando-works-site:80 | Brand portfolio |
| re.mando.works | Receipt App | receipt-app:3000 | Max 20MB uploads |
| present.mando.works | Presentations | present-mando-present-mando-1:3010 | Slides |
| qr.mando.works | QR Generator | mando-qr-generator:3020 | QR codes |
| dj.mando.works | Navidrome | navidrome:4533 | 600s timeout for large files |
| sound.mando.works | Mando Sound | 172.20.0.1:3008 | Music streaming |
| gtm.mando.works | GTM β Mando | mando-core:3000 | CORS: puntopio.com |
| trackers.mando.works | Trackers | mando-core:3000 | HTTP + HTTPS |
| mercati.mando.works | Mercati POS | punto-pio:80 | Market POS |
| speed.mando.works | Speed Test | β no container β | β οΈ needs setup |
| mail.mando.works | Mail | 172.20.0.1:8025 | Mail server |
| webmail.mando.works | Webmail | 172.20.0.1:8026 | Web email client |
| torrent.mando.works | qBittorrent | 172.20.0.1:35643 | Seedbox |
| mercadomiramar.com | Mercado Miramar | miramar-app:3000 | Next.js i18n app |
| gtm.mercadomiramar.com | GTM β Miramar | gtm-gtm-mercadomiramar-com-core:3000 | CORS: mercadomiramar.com |
| posha.club | Posha Club | posha-club-app-1:3000 | VIP portal |
| watchdog.puntopio.com | Mandota Watchdog | mandota_watchdog:18789 | Discord bot watchdog |
π³ Docker Containers
| Container | Image | Host Port(s) | Role |
| caddy-punto-pio | caddy:2-alpine | :80, :443 | Proxy |
| n8n-punto-pio | n8nio/n8n:latest | :11055 | App |
| postgres-n8n-punto-pio | postgres:15-alpine | internal | DB |
| redis-n8n | redis:7-alpine | :6379 | Cache |
| uptime_kuma | louislam/uptime-kuma:1 | :11002 | Monitor |
| portainer | portainer/portainer-ce | :11001 | App |
| miramar-app | miramar-app:local | :3132 | App |
| miramar-db | postgres:16-alpine | internal | DB |
| mercado-db | postgres:15-alpine | internal | DB |
| receipt-app | receipt-app-app | :3007 | App |
| receipt-db | postgres:15-alpine | :5436 | DB |
| present-mando-present-mando-1 | present-mando | :3010 | App |
| posha-club-app-1 | posha-club-app | :3050 | App |
| mando-works-site | mando-works-mando-works | :3099 | App |
| mando-core | mando-core:latest | internal | App |
| mando-qr-generator | generations-mando-qr | :3020 | App |
| mando-sound-frontend | mando-sound-frontend | :3008 | App |
| mando-sound-backend | mando-sound-backend | :8000 | App |
| punto-pio | punto-pio:latest | :80, :3001 | App |
| navidrome | deluan/navidrome | :4533 | App |
| qbittorrent | linuxserver/qbittorrent | :51413 | App |
| grafana-sentinel | grafana | :3005 | Monitor |
| prometheus-sentinel | prometheus | internal | Monitor |
| openclaw-gateway | openclaw-fleet | internal | Proxy |
| ts-ingress-router | ts-ingress-router | internal | Proxy |
π Access Reference
β οΈ n8n Hub β Credentials Required in n8n
WooCommerce authEnable "Include in Query" toggle
Google OAuthContacts + Calendar APIs
Pushover tokensee .env β PUSHOVER_TOKEN
Telegram botsee .env β TELEGRAM_BOT_TOKEN
π§ Infrastructure Quick Notes
Cloudflare DNSGray cloud (DNS-only, NOT proxied)
SSLLet's Encrypt via Caddy (auto-renew)
502 fixCaddy upstream must match container name
DNS broken in containersAdd to pio-hub_automation-network-mtu-fix
n8n workflowsMust import + activate manually in UI
π n8n Workflows
π¦Order Processing
WooCommerce β Google Contacts β Google Calendar β Pushover/Telegram
/webhook/order-created
πOrder Status Notifications
Status changes β push notification to admin iPhone
/webhook/order-status
πAbandoned Cart
WooCommerce cart abandonment β recovery notifications
PHP plugin trigger
πTelegram Live Tracker
Delivery driver shares location via Telegram bot β live tracking dashboard
Telegram bot trigger
πMagic Link Auth
Passwordless login link generation, delivery and usage tracking
/webhook/magic-link
πDelivery API
GET active orders + POST delivery submission with GPS coordinates
GET /webhook/get-active-orders
POST /webhook/submit-delivery