Files
EZ-Homelab/docs/ports-in-use.md
EZ-Homelab 7a1cd5a8a0 Fix port conflicts and standardize service configurations
- Resolve port conflicts: TasmoAdmin (8084), Form.io (3002), Gitea (3010)
- Add missing Authelia SSO and Sablier lazy loading to utilities stack
- Standardize Form.io labels to match TRAEFIK CONFIGURATION guidelines
- Reorganize ports-in-use.md with stack-based table and proper column order
- Remove Dokuwiki deployment from ez-homelab.sh (already in productivity stack)
- Update service restart policies for lazy loading compatibility
2026-01-24 17:01:53 -05:00

6.1 KiB

Ports in Use

This document tracks all ports used by services in the EZ-Homelab. Update this document whenever services are added or ports are changed.

Stack Service External Port Internal Port Protocol Purpose
Core Traefik 80 80 TCP HTTP (redirects to HTTPS)
Core Traefik 443 443 TCP HTTPS
Core Traefik 8080 8080 TCP Dashboard (protected)
Infrastructure Dockge 5001 5001 TCP Web UI
Infrastructure Pi-hole 53 53 TCP/UDP DNS
Infrastructure Docker Proxy 127.0.0.1:2375 2375 TCP Docker API proxy
Home Assistant ESPHome 6052 6052 TCP Web UI
Home Assistant TasmoAdmin 8084 80 TCP Web UI
Home Assistant MotionEye 8765 8765 TCP Web UI
Home Assistant Node-RED 1880 1880 TCP Web UI
Home Assistant Mosquitto 1883 1883 TCP MQTT
Home Assistant Mosquitto 9001 9001 TCP MQTT Websockets
Media Jellyfin 8096 8096 TCP Web UI
Media Calibre-Web 8083 8083 TCP Web UI
Media Management Sonarr 8989 8989 TCP Web UI
Media Management Radarr 7878 7878 TCP Web UI
Media Management Prowlarr 9696 9696 TCP Web UI
Media Management Readarr 8787 8787 TCP Web UI
Media Management Lidarr 8686 8686 TCP Web UI
Media Management Lazylibrarian 5299 5299 TCP Web UI
Media Management Mylar3 8090 8090 TCP Web UI
Media Management Jellyseerr 5055 5055 TCP Web UI
Media Management Unmanic 8888 8888 TCP Web UI
Media Management Tdarr Server 8266 8266 TCP Web UI
Media Management Tdarr Node 8267 8267 TCP Worker port
Media Management Flaresolverr 8191 8191 TCP HTTP proxy
Monitoring Prometheus 9090 9090 TCP Web UI/Metrics
Monitoring Grafana 3000 3000 TCP Web UI
Monitoring cAdvisor 8082 8080 TCP Web UI
Monitoring Uptime Kuma 3001 3001 TCP Web UI
Monitoring Loki 3100 3100 TCP Web UI
Monitoring Node Exporter 9100 9100 TCP Metrics
Utilities Backrest 9898 9898 TCP Web UI
Utilities Duplicati 8200 8200 TCP Web UI
Utilities Form.io 3002 3001 TCP Web UI
Utilities Vaultwarden 80 80 TCP Internal port
VPN Gluetun 8888 8888 TCP HTTP proxy
VPN Gluetun 8388 8388 TCP/UDP Shadowsocks
VPN Gluetun 8081 8080 TCP qBittorrent Web UI
VPN Gluetun 6881 6881 TCP/UDP qBittorrent
VPN qBittorrent N/A N/A N/A Routed through Gluetun
Productivity DokuWiki 80 80 TCP Internal port
Productivity Nextcloud 80 80 TCP Internal port
Productivity Gitea 3010 3000 TCP Web UI
Productivity MinIO 9000 9000 TCP API
Productivity MinIO 9001 9001 TCP Web UI

Port Range Reference

Range Usage
1-1023 System ports (well-known)
1024-49151 Registered ports
49152-65535 Dynamic/private ports

Common Port Conflicts

  • Port 80: Used by Traefik for HTTP (conflicts with internal services only)
  • Port 3000: Used by Grafana
  • Port 3001: Used by Uptime Kuma
  • Port 8888: Used by Gluetun HTTP proxy
  • Port 53: Used by Pi-hole for DNS
  • Port 2375: Used by Docker Proxy (localhost only)
  • Port 5001: Used by Dockge
  • Port 8080: Used by Traefik dashboard
  • Port 9090: Used by Prometheus

Adding New Services

When adding new services:

  1. Check this document for available ports
  2. Choose ports that don't conflict with existing services
  3. Update this document with new port mappings
  4. Consider using Traefik labels instead of direct port exposure for web services

Port Planning Guidelines

  • Web services: Use Traefik labels (no direct ports needed)
  • Databases: Use internal networking only (no external ports)
  • VPN services: Route through Gluetun for security
  • Development tools: Consider localhost-only binding (127.0.0.1:port)
  • Monitoring: Use high-numbered ports (9000+ range)

Updating This Document

This document should be updated whenever:

  • New services are added to any stack
  • Existing services change their port mappings
  • Services are removed from stacks
  • Network configurations change

Run this command to find all port mappings in compose files:

grep -r "ports:" docker-compose/ | grep -v "^#" | sort