On this page
Traefik Configuration
Overview
Comprehensive documentation of the Traefik reverse proxy setup used to manage multiple domains and SSL certificates on a Digital Ocean droplet. Traefik serves as the central routing and SSL termination point for all services.
Architecture
Core Components
- Traefik: Reverse proxy and load balancer
- Let’s Encrypt: Automatic SSL certificate management
- Docker Integration: Automatic service discovery
- Network Routing: Multi-domain and subdomain management
Service Discovery
- Docker Labels: Automatic service detection
- Dynamic Configuration: Real-time routing updates
- Health Checks: Service availability monitoring
- Load Balancing: Automatic load distribution
Configuration
Docker Compose Setup
services:
traefik:
image: traefik:v3.0
command:
- --api.dashboard=true
- --providers.docker=true
- --providers.docker.exposedbydefault=false
- --entrypoints.web.address=:80
- --entrypoints.websecure.address=:443
- --certificatesresolvers.myresolver.acme.tlschallenge=true
- --certificatesresolvers.myresolver.acme.email=your-email@domain.com
- --certificatesresolvers.myresolver.acme.storage=/letsencrypt/acme.json
ports:
- "80:80"
- "443:443"
- "8080:8080"
volumes:
- /var/run/docker.sock:/var/run/docker.sock:ro
- ./letsencrypt:/letsencrypt
networks:
- webSSL Configuration
- Automatic SSL: Let’s Encrypt certificate generation
- Certificate Renewal: Automatic renewal before expiration
- HTTP to HTTPS: Automatic redirection
- TLS Versions: Modern TLS configuration
- Certificate Storage: Persistent certificate storage
Domain Management
- Primary Domains: brotherhoodofnicola.com, ocfomaha.org
- Subdomains: schedule.brotherhoodofnicola.com, chat.brotherhoodofnicola.com
- Wildcard Certificates: Support for subdomain certificates
- Multi-Domain: Single certificate for multiple domains
Service Routing
Ghost CMS Services
- brotherhoodofnicola.com: Main community site
- ocfomaha.org: Fellowship site
- Routing: Host-based routing with SSL termination
- Health Checks: Service availability monitoring
Specialized Applications
- Rallly: Event scheduling at schedule.brotherhoodofnicola.com
- Campfire: Chat application at chat.brotherhoodofnicola.com
- Static Content: Calendar and other static resources
Network Configuration
- External Network: Shared web network for all services
- Service Isolation: Individual networks for databases
- Port Management: Internal port mapping and routing
- Load Balancing: Automatic load distribution
Security Measures
SSL/TLS Security
- Modern TLS: TLS 1.2+ only
- Perfect Forward Secrecy: Ephemeral key exchange
- Certificate Pinning: HSTS headers
- Security Headers: Comprehensive security headers
Access Control
- Rate Limiting: Request rate limiting
- IP Whitelisting: Restricted access for admin functions
- Basic Authentication: Admin panel protection
- Service Isolation: Network-level isolation
Monitoring and Logging
- Access Logs: Comprehensive request logging
- Error Tracking: Error monitoring and alerting
- Performance Metrics: Response time monitoring
- Security Events: Security event logging
Performance Optimization
Caching Strategy
- Static Assets: Automatic caching of static content
- Compression: Gzip compression for text content
- CDN Integration: Content delivery network support
- Cache Headers: Optimized cache control headers
Load Balancing
- Round Robin: Default load balancing algorithm
- Health Checks: Automatic unhealthy service removal
- Circuit Breaker: Automatic failure handling
- Retry Logic: Automatic retry for failed requests
Monitoring and Maintenance
Health Monitoring
- Service Health: Automatic service health checks
- SSL Status: Certificate expiration monitoring
- Performance Metrics: Response time and throughput monitoring
- Error Rates: Error rate monitoring and alerting
Backup and Recovery
- Configuration Backup: Traefik configuration backup
- Certificate Backup: SSL certificate backup
- Log Backup: Access and error log backup
- Disaster Recovery: Complete system restoration procedures
Update Process
- Image Updates: Traefik image updates
- Configuration Updates: Dynamic configuration updates
- Certificate Updates: Automatic certificate renewal
- Security Updates: Regular security updates
Troubleshooting
Common Issues
- SSL Certificate Problems: Certificate generation and renewal issues
- Routing Issues: Service routing and load balancing problems
- Performance Issues: Slow response times and high resource usage
- Configuration Errors: Incorrect routing and SSL configuration
Debugging Tools
- Traefik Dashboard: Web-based configuration and monitoring
- Log Analysis: Comprehensive log analysis and debugging
- Health Checks: Service health monitoring and debugging
- Network Diagnostics: Network connectivity and routing diagnostics
Future Enhancements
Advanced Features
- WAF Integration: Web application firewall integration
- DDoS Protection: Distributed denial-of-service protection
- Advanced Load Balancing: Sophisticated load balancing algorithms
- Service Mesh: Microservices communication management
Security Enhancements
- Advanced Authentication: Multi-factor authentication
- Security Scanning: Automated security vulnerability scanning
- Compliance: Security compliance and auditing
- Threat Detection: Advanced threat detection and prevention