3.0 KiB
3.0 KiB
Fluxer Chat Server Deployment
Domain: st.vish.gg
Replaces: Stoat Chat
Status: ✅ DEPLOYED SUCCESSFULLY & CAPTCHA ISSUE RESOLVED
Deployment Summary
- Date: 2026-02-15
- Domain: st.vish.gg (Cloudflare DNS grey cloud)
- Location: /root/fluxer
- Replaced: Stoat Chat (services stopped and removed)
- Status: Fully operational with user registration working
Architecture
Fluxer uses a multi-container architecture with the following services:
- caddy: Frontend web server serving the React app (port 8088)
- gateway: WebSocket gateway for real-time communication
- api: REST API backend (internal port 8080)
- postgres: Primary database
- redis: Caching and session storage
- cassandra: Message storage
- minio: File storage (S3-compatible)
- meilisearch: Search engine
- livekit: Voice/video calling (not configured)
- worker: Background job processing
- media: Media processing service
- clamav: Antivirus scanning
- metrics: Monitoring and metrics
Network Configuration
- External Access: nginx reverse proxy → Caddy (port 8088) → API (port 8080)
- Nginx Config: /etc/nginx/sites-available/fluxer
- SSL: Handled by nginx with existing certificates
Issues Resolved
1. Asset Loading (Fixed)
- Problem: Frontend was trying to load assets from external CDN
- Solution: Modified build configuration to use local assets
2. Captcha Verification (Fixed)
- Problem: "verify human" captcha not loading, preventing account creation
- Root Cause: Using test Turnstile keys causing 400 errors on registration
- Solution: Disabled captcha by setting
CAPTCHA_ENABLED=falsein/root/fluxer/dev/.env - Result: User registration now works without captcha requirement
Configuration Files
- Main Config: /root/fluxer/dev/compose.yaml
- Environment: /root/fluxer/dev/.env
- Nginx Config: /etc/nginx/sites-available/fluxer
Key Environment Variables
CAPTCHA_ENABLED=false
CAPTCHA_PRIMARY_PROVIDER=turnstile
TURNSTILE_SITE_KEY=1x00000000000000000000AA (test key)
TURNSTILE_SECRET_KEY=1x0000000000000000000000000000000AA (test key)
Verification
- API Health: https://st.vish.gg/api/instance ✅
- Frontend: https://st.vish.gg/ ✅
- Registration: Working without captcha ✅
- Test User Created: ID 1472533637105737729 ✅
Management Commands
# Start services
cd /root/fluxer && docker compose -f dev/compose.yaml up -d
# Stop services
cd /root/fluxer && docker compose -f dev/compose.yaml down
# View logs
cd /root/fluxer && docker compose -f dev/compose.yaml logs [service_name]
# Restart API only
cd /root/fluxer && docker compose -f dev/compose.yaml restart api
Notes
- Captcha can be re-enabled later by setting
CAPTCHA_ENABLED=trueand configuring proper Turnstile keys - Voice/video calling requires LiveKit configuration (currently disabled)
- All data is persisted in Docker volumes
- Service runs in development mode for easier debugging