# Esempio Configurazione Traefik Questa directory contiene un esempio di configurazione Traefik per il server di produzione. ## Setup Iniziale 1. Crea la directory sul server: ```bash mkdir -p /opt/traefik/letsencrypt cd /opt/traefik ``` 2. Copia il file docker-compose.yml in questa directory 3. Modifica l'email per Let's Encrypt: ```bash nano docker-compose.yml # Modifica: tua-email@example.com ``` 4. Crea la rete Docker: ```bash docker network create traefik-network ``` 5. Avvia Traefik: ```bash docker-compose up -d ``` 6. Verifica che sia attivo: ```bash docker ps docker logs traefik ``` ## Note di Sicurezza - **Dashboard**: La configurazione include il dashboard Traefik con autenticazione basic - Per generare una nuova password per il dashboard: ```bash # Installa htpasswd se necessario: apt-get install apache2-utils htpasswd -nb admin tuapassword ``` - In produzione, considera di rimuovere completamente il dashboard o limitarlo a IP specifici ## Configurazione Domini Dopo aver avviato Traefik, i tuoi container con le labels corrette saranno automaticamente esposti con: - Certificati SSL Let's Encrypt - Redirect automatico HTTP → HTTPS - Routing basato sul dominio ## Troubleshooting ### Certificati non vengono generati - Verifica che la porta 80 sia accessibile pubblicamente - Controlla i logs: `docker logs traefik` - Verifica che il dominio punti all'IP del server - Assicurati che il file `acme.json` abbia i permessi corretti: ```bash chmod 600 letsencrypt/acme.json ``` ### Container non raggiungibili - Verifica che il container sia sulla rete `traefik-network` - Controlla i logs di Traefik per errori - Verifica le labels del container con: `docker inspect nome-container`