Docker Guide · 6 min read · Feb 05, 2026
Guida Docker: Installazione di Traefik - un Moderno Reverse Proxy per Microservizi

Traefik è un moderno reverse proxy HTTP e bilanciatore di carico per microservizi. Traefik rende facile il deployment di tutti i microservizi, integrandosi con componenti infrastrutturali esistenti come Docker, Swarm Mode, Kubernetes, Amazon ECS, Rancher, Etcd, Consul, ecc.
Traefik funge da router per tutte le tue applicazioni microservizi, instradando tutte le richieste dei client verso la corretta destinazione dei microservizi.
In questo tutorial, ti mostrerò passo dopo passo come installare e configurare Traefik, un moderno reverse proxy, come container Docker su Ubuntu 18.04 LTS (Bionic Beaver).
Prerequisiti
- Ubuntu 18.04
- Privilegi di root
Cosa faremo?
- Installare Docker su Ubuntu 18.04
- Installare Docker Compose
- Creare una rete Docker personalizzata
- Installare e configurare Traefik
- Testare
Passo 1 - Installare Docker su Ubuntu 18.04
Per questa guida, utilizzeremo l’ultima versione di Docker che può essere installata dal repository ufficiale di Docker.
Aggiungi la chiave e il repository di Docker utilizzando il comando qui sotto.
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository \
"deb [arch=amd64] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) \
stable"Il comando ‘add-apt-repository’ aggiornerà automaticamente tutti i repository.

Ora installa l’ultima versione di docker-ce.
sudo apt install docker-ceDopo che l’installazione è completata, avvia il servizio Docker e abilitalo per l’avvio automatico ad ogni avvio del sistema.
systemctl start docker
systemctl enable dockerLa community edition di Docker è stata installata sul sistema Ubuntu 18.04, controlla la versione di Docker installata.
docker version
Aggiuntivo: Eseguire Docker per utenti non root
Il container Docker può essere eseguito sotto un utente non root. Dobbiamo solo aggiungere l’utente al gruppo Docker.
Aggiungi l’utente ‘mohammad’.
useradd -m -s /bin/bash mohammadOra aggiungi l’utente ‘mohammad’ al gruppo Docker, quindi riavvia il servizio Docker.
usermod -a -G docker mohammad
systemctl restart dockerTesta eseguendo il docker hello-world.
docker run -it hello-worldEcco il risultato.

Passo 2 - Installare Docker Compose
Docker-Compose è uno strumento da riga di comando per definire e gestire applicazioni Docker multi-container.
Docker Compose è uno script Python, può essere installato con il comando pip di Python o con il comando apt dal repository di Ubuntu facilmente. Con Compose, possiamo eseguire più container Docker con un unico comando.
Installa Docker Compose dal repository utilizzando il comando apt qui sotto.
sudo apt install docker-composeDopo che l’installazione è completata, controlla la versione di Docker Compose.
docker-compose versionLa versione 1.17 di Docker Compose è stata installata su Ubuntu 18.04.

Passo 3 - Creare una rete Docker personalizzata
In questo tutorial, il container traefik verrà eseguito sulla rete Docker personalizzata. Quindi dobbiamo creare una nuova rete Docker personalizzata sul server.
Controlla le reti Docker disponibili sul sistema.
docker network lsOra crea una nuova rete personalizzata chiamata ‘proxy’ per il container traefik.
docker network create proxyE otterrai una stringa casuale del nome della rete del container. Controlla di nuovo le reti disponibili.
docker network lsDi seguito è mostrato il risultato.

La rete Docker personalizzata chiamata ‘proxy’ per traefik è stata creata.
Passo 4 - Installare e configurare il reverse proxy Traefik
In questo passo, creeremo il container traefik con HTTPS letsencrypt abilitato (utilizzando un nome di dominio ‘traefik.hakase-labs.io), e reindirizzare automaticamente HTTP a HTTPS su traefik.
Pre-Installazione di Traefik
Prima di creare tutta la configurazione di traefik, dobbiamo installare ‘apache2-utils’ per generare la password htpasswd crittografata e creare la nuova directory traefik.
Installa ‘apache2-utils’ utilizzando il comando apt qui sotto.
sudo apt install apache2-utils -yOra esegui il comando htpasswd qui sotto per generare una nuova password per l’autenticazione del dashboard di traefik.
htpasswd -nb mohammad passwordTieni il risultato nel tuo appunto.
mohammad:$apr1$hEgpZUN2$OYG3KwpzI3T1FqIg9LIbi.
Successivamente, accedi come utente ‘mohammad’.
su - mohammadCrea una nuova directory chiamata ‘traefik’ per tutta la configurazione di traefik.
mkdir -p traefik/
cd traefik/Creare la configurazione di Traefik
Vai nella directory ‘traefik’ e crea un nuovo file di configurazione ‘traefik.toml’ utilizzando l’editor vim.
cd traefik/
vim traefik.tomlIncolla la configurazione qui sotto.
#Traefik Global Configuration
debug = false
checkNewVersion = true
logLevel = "ERROR"
#Definire l'EntryPoint per HTTP e HTTPS
defaultEntryPoints = ["https","http"]
#Abilitare il Dashboard di Traefik sulla porta 8080
#con metodo di autenticazione di base
#mohammad e password
[web]
address = ":8080"
[web.auth.basic]
users = ["mohammad:$apr1$hEgpZUN2$OYG3KwpzI3T1FqIg9LIbi."]
#Definire la porta HTTP 80 e
#porta HTTPS 443 EntryPoint
#Abilitare il reindirizzamento automatico da HTTP a HTTPS
[entryPoints]
[entryPoints.http]
address = ":80"
[entryPoints.http.redirect]
entryPoint = "https"
[entryPoints.https]
address = ":443"
[entryPoints.https.tls]
#Abilitare il retry per inviare una richiesta se c'è un errore di rete
[retry]
#Definire la configurazione del backend Docker
[docker]
endpoint = "unix:///var/run/docker.sock"
domain = "traefik.hakase-labs.io"
watch = true
exposedbydefault = false
#Registrazione Letsencrypt
#Definire la sfida HTTP ACME di Letsencrypt
[acme]
email = "[email protected]"
storage = "acme.json"
entryPoint = "https"
OnHostRule = true
[acme.httpChallenge]
entryPoint = "http"Salva ed esci.
Nota:
Tutte le informazioni sulla configurazione sono nella sezione commento ‘ #… ‘.
Creare lo script Docker Compose di Traefik
Ora crea lo script yml di docker-compose.
vim docker-compose.ymlIncolla la configurazione qui sotto.
version: '3'
services:
traefik:
image: traefik:latest
command: --docker --docker.domain=hakase-labs.io
ports:
- 80:80
- 443:443
networks:
- proxy
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- ./traefik.toml:/traefik.toml
- ./acme.json:/acme.json
labels:
- "traefik.frontend.rule=Host:traefik.hakase-labs.io"
- "traefik.port=8080"
container_name: traefik
restart: always
networks:
proxy:
external: trueSalva ed esci.
Nota:
- Stiamo creando un nuovo container chiamato ‘traefik’ basato sull’immagine Docker ‘traefik:latest’.
- Il container ‘traefik’ verrà eseguito sulla rete Docker personalizzata chiamata ‘proxy’ ed esporrà le porte esterne HTTP 80 e HTTPS 443.
- Il container monterà la configurazione di traefik ‘traefik.toml’ e ‘acme.json’, incluso il file docker sock.
- Configurazione delle etichette per traefik, il nome di dominio frontend e la porta di traefik.
Configurazione ACME di Letsencrypt
La configurazione acme su ‘traefik.toml’ è utilizzata per generare automaticamente il SSL letsencrypt. Ed è richiesta per il file di archiviazione ‘acme.json’.
Crea un nuovo file JSON ‘acme.json’ e cambia i permessi a ‘600’.
touch acme.json
chmod 600 acme.jsonTutti i log riguardanti le informazioni SSL letsencrypt saranno salvati nel file.
Costruire il container Traefik
Ora siamo pronti per costruire il nostro container traefik utilizzando i file di configurazione sopra.
cd traefik/
ls -lahTutte le configurazioni ‘traefik.toml’, ‘docker-compose.yml’ e ‘acme.json’.

Costruisci il container utilizzando il comando docker compose qui sotto.
docker-compose up -dQuando è completo, controlla il container in esecuzione.
docker-compose psE otterrai il container Traefik in esecuzione, esponendo le porte esterne HTTP e HTTPS.
Passo 5 - Testare
Apri il tuo browser web e digita il nome di dominio traefik nella barra degli indirizzi. Il mio è:
http://traefik.hakase-labs.io/
Verrai reindirizzato alla connessione HTTPS e ti verrà chiesto di autenticazione con nome utente e password.
Accedi con l’utente ‘mohammad’ e la password è ‘password’.
E otterrai il dashboard di Traefik come sotto.

Pagina di stato di salute di Traefik.

Il moderno reverse proxy HTTP Traefik è stato installato come container Docker su Ubuntu 18.04.
Riferimento
Ricevi i nuovi post nella tua casella di posta.
Nessuno spam. Disiscriviti in qualsiasi momento.