2.9 KiB
2.9 KiB
🔒 PORT CONFIGURATION - PERMANENTLY LOCKED
Church Music Database Ports
DO NOT CHANGE THESE PORTS
Production Ports (LOCKED)
- Backend API:
8080(Gunicorn + Flask) - Frontend:
5100(Node serve) - HTTPS Proxy:
443(Nginx → 8080/5100)
Port Status
# Check ports
sudo lsof -i :8080 -i :5100 | grep LISTEN
# Expected output:
# gunicorn ... *:8080 (LISTEN) - Backend
# node ... *:5100 (LISTEN) - Frontend
Service Management
Start Services (Correct Way)
sudo systemctl start church-music-backend church-music-frontend
Stop Services
sudo systemctl stop church-music-backend church-music-frontend
Restart Services
sudo systemctl restart church-music-backend church-music-frontend
Check Status
sudo systemctl status church-music-backend church-music-frontend
Troubleshooting
Port 8080 In Use
# Kill any rogue process
sudo lsof -ti:8080 | xargs -r sudo kill -9
sudo systemctl restart church-music-backend
Port 5100 In Use
# Kill any rogue process
sudo lsof -ti:5100 | xargs -r sudo kill -9
sudo systemctl restart church-music-frontend
Both Ports Blocked
# Nuclear option - kill all and restart
sudo pkill -9 gunicorn
sudo pkill -9 serve
sleep 2
sudo systemctl restart church-music-backend church-music-frontend
Configuration Files
Backend Service
/etc/systemd/system/church-music-backend.service
- Binds to:
127.0.0.1:8080 - Workers: 2
- Auto-restart: Yes
Frontend Service
/etc/systemd/system/church-music-frontend.service
- Binds to:
0.0.0.0:5100 - Serves:
/media/pts/Website/Church_HOP_MusicData/frontend/build - Auto-restart: Yes
Nginx Proxy
/etc/nginx/sites-enabled/church-music*
- Proxies
https://houseofprayer.ddns.net/api/*→http://127.0.0.1:8080/api/* - Proxies
https://houseofprayer.ddns.net/*→http://127.0.0.1:5100/*
Architecture
Internet (HTTPS :443)
↓
Nginx Reverse Proxy
↓
┌───────────────┬────────────────┐
↓ ↓ ↓
Frontend Backend API Database
(Port 5100) (Port 8080) (PostgreSQL :5432)
React Build Flask/Gunicorn
DO NOT
- ❌ Change ports 8080 or 5100
- ❌ Run manual gunicorn/serve on different ports
- ❌ Use ports 3000, 5000, 5965, or any other port
- ❌ Run services outside of systemd
- ❌ Modify port configuration without updating ALL of:
- Systemd service files
- Nginx configuration
- Backend configuration
- Frontend API base URL
Auto-Start on Boot
Services are enabled to start automatically:
sudo systemctl is-enabled church-music-backend church-music-frontend
# Both should show: enabled
Last Verified: December 17, 2025 22:29 CST Status: ✅ LOCKED AND OPERATIONAL