Docker Traefik · 6 min read · Feb 05, 2026

Guide Docker : Installer Traefik - un Proxy Inverse Moderne pour Microservices

Traefik est un proxy inverse HTTP moderne et un équilibreur de charge pour les microservices. Traefik facilite le déploiement de tous les microservices, intégré avec des composants d’infrastructure existants tels que Docker, Swarm Mode, Kubernetes, Amazon ECS, Rancher, Etcd, Consul, etc.

Traefik sert de routeur pour toutes vos applications microservices, acheminant toutes les demandes des clients vers la destination correcte des microservices.

Dans ce tutoriel, je vais vous montrer étape par étape comment installer et configurer Traefik, un proxy inverse moderne, en tant que conteneur Docker sur Ubuntu 18.04 LTS (Bionic Beaver).

Prérequis

  • Ubuntu 18.04
  • Privilèges root

Que allons-nous faire ?

  1. Installer Docker sur Ubuntu 18.04
  2. Installer Docker Compose
  3. Créer un Réseau Docker Personnalisé
  4. Installer et Configurer Traefik
  5. Tester

Étape 1 - Installer Docker sur Ubuntu 18.04

Pour ce guide, nous allons utiliser la dernière version de Docker qui peut être installée à partir du dépôt officiel de Docker.

Ajoutez la clé et le dépôt Docker en utilisant la commande ci-dessous.

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"

La commande ‘add-apt-repository’ mettra automatiquement à jour tous les dépôts.

Installer Docker sur Ubuntu

Maintenant, installez le dernier docker-ce.

sudo apt install docker-ce

Après l’installation, démarrez le service Docker et activez-le pour qu’il se lance à chaque démarrage du système.

systemctl start docker  
systemctl enable docker

L’édition communautaire de Docker a été installée sur le système Ubuntu 18.04, vérifiez la version de Docker installée.

docker version

Vérifier la version de Docker

Supplément : Exécuter Docker pour un utilisateur non-root

Le conteneur Docker peut être exécuté sous un utilisateur non-root. Nous devons simplement ajouter l’utilisateur au groupe Docker.

Ajoutez l’utilisateur ‘mohammad’.

useradd -m -s /bin/bash mohammad

Ajoutez maintenant l’utilisateur ‘mohammad’ au groupe Docker, puis redémarrez le service Docker.

usermod -a -G docker mohammad  
systemctl restart docker

Testez en exécutant le hello-world de Docker.

docker run -it hello-world

Et voici le résultat.

Exécuter Docker pour un utilisateur non-root

Étape 2 - Installer Docker Compose

Docker-Compose est un outil en ligne de commande pour définir et gérer des applications Docker multi-conteneurs.

Docker Compose est un script Python, il peut être installé avec la commande pip de Python ou avec la commande apt à partir du dépôt Ubuntu facilement. Avec Compose, nous pouvons exécuter plusieurs conteneurs Docker avec une seule commande.

Installez Docker Compose à partir du dépôt en utilisant la commande apt ci-dessous.

sudo apt install docker-compose

Après l’installation, vérifiez la version de Docker Compose.

docker-compose version

Docker Compose 1.17 a été installé sur Ubuntu 18.04.

Installer Docker Compose

Étape 3 - Créer un Réseau Docker Personnalisé

Dans ce tutoriel, le conteneur Traefik fonctionnera sur le réseau Docker personnalisé. Nous devons donc créer un nouveau réseau Docker personnalisé sur le serveur.

Vérifiez les réseaux Docker disponibles sur le système.

docker network ls

Créez maintenant un nouveau réseau personnalisé nommé ‘proxy’ pour le conteneur Traefik.

docker network create proxy

Et vous obtiendrez une chaîne aléatoire du nom du conteneur réseau. Vérifiez à nouveau le réseau disponible.

docker network ls

Voici le résultat.

Créer un Réseau Docker Personnalisé

Le réseau Docker personnalisé nommé ‘proxy’ pour Traefik a été créé.

Étape 4 - Installer et Configurer le Proxy Inverse Traefik

Dans cette étape, nous allons créer le conteneur Traefik avec HTTPS letsencrypt activé (en utilisant un nom de domaine ‘traefik.hakase-labs.io), et rediriger automatiquement HTTP vers HTTPS sur Traefik.

Pré-Installation de Traefik

Avant de créer toute la configuration de Traefik, nous devons installer ‘apache2-utils’ pour générer le mot de passe htpasswd crypté et créer le nouveau répertoire Traefik.

Installez ‘apache2-utils’ en utilisant la commande apt ci-dessous.

sudo apt install apache2-utils -y

Exécutez maintenant la commande htpasswd ci-dessous pour générer un nouveau mot de passe pour l’authentification du tableau de bord Traefik.

htpasswd -nb mohammad password

Conservez le résultat dans vos notes.

mohammad:$apr1$hEgpZUN2$OYG3KwpzI3T1FqIg9LIbi.

Installer et Configurer le Proxy Inverse Traefik

Ensuite, connectez-vous à l’utilisateur ‘mohammad’.

su - mohammad

Créez un nouveau répertoire nommé ‘traefik’ pour toute la configuration de Traefik.

mkdir -p traefik/  
cd traefik/

Créer la Configuration de Traefik

Allez dans le répertoire ‘traefik’ et créez un nouveau fichier de configuration ‘traefik.toml’ en utilisant l’éditeur vim.

cd traefik/  
vim traefik.toml

Collez la configuration ci-dessous.

#Configuration Globale de Traefik
debug = false
checkNewVersion = true
logLevel = "ERROR"

#Définir le Point d'Entrée pour HTTP et HTTPS
defaultEntryPoints = ["https","http"]

#Activer le Tableau de Bord Traefik sur le port 8080
#avec méthode d'authentification basique
#mohammad et mot de passe
[web]
address = ":8080"
[web.auth.basic]
users = ["mohammad:$apr1$hEgpZUN2$OYG3KwpzI3T1FqIg9LIbi."]

#Définir le port HTTP 80 et
#le port HTTPS 443 Point d'Entrée
#Activer la redirection automatique de HTTP vers HTTPS
[entryPoints]
[entryPoints.http]
address = ":80"
[entryPoints.http.redirect]
entryPoint = "https"
[entryPoints.https]
address = ":443"
[entryPoints.https.tls]

#Activer la réessai d'envoi d'une requête si l'erreur réseau
[retry]

#Définir la Configuration Backend Docker
[docker]
endpoint = "unix:///var/run/docker.sock"
domain = "traefik.hakase-labs.io"
watch = true
exposedbydefault = false

#Enregistrement Letsencrypt
#Définir le défi HTTP ACME Letsencrypt
[acme]
email = "[email protected]"
storage = "acme.json"
entryPoint = "https"
OnHostRule = true
  [acme.httpChallenge]
  entryPoint = "http"

Enregistrez et quittez.

Remarque :

Toutes les informations concernant la configuration se trouvent dans la section de commentaire ‘ #… ‘.

Créer le Script Docker Compose de Traefik

Créez maintenant le script yml docker-compose.

vim docker-compose.yml

Collez la configuration ci-dessous.

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: true

Enregistrez et quittez.

Remarque :

  1. Nous créons un nouveau conteneur nommé ‘traefik’ basé sur l’image Docker ‘traefik:latest’.
  2. Le conteneur ‘traefik’ fonctionnera sur le réseau Docker personnalisé nommé ‘proxy’ et exposera les ports externes HTTP 80 et HTTPS 443.
  3. Le conteneur montera la configuration de Traefik ‘traefik.toml’ et ‘acme.json’, y compris le fichier docker.sock.
  4. Configuration des étiquettes pour Traefik, le nom de domaine frontal et le port de Traefik.

Configuration ACME Letsencrypt

La configuration acme sur ‘traefik.toml’ est utilisée pour générer automatiquement le SSL letsencrypt. Et il est requis pour le fichier de stockage ‘acme.json’.

Créez un nouveau fichier JSON ‘acme.json’ et changez les permissions en ‘600’.

touch acme.json  
chmod 600 acme.json

Tous les journaux concernant les informations SSL letsencrypt seront enregistrés dans le fichier.

Construire le Conteneur Traefik

Nous sommes maintenant prêts à construire notre propre conteneur Traefik en utilisant les fichiers de configuration ci-dessus.

cd traefik/  
ls -lah

Tous les fichiers de configuration ‘traefik.toml’, ‘docker-compose.yml’ et ‘acme.json’.

Construire le Conteneur Traefik

Construisez le conteneur en utilisant la commande docker compose ci-dessous.

docker-compose up -d

Lorsque c’est terminé, vérifiez le conteneur en cours d’exécution.

docker-compose ps

Et vous obtiendrez le conteneur Traefik en cours d’exécution, exposant les ports externes HTTP et HTTPS.

Étape 5 - Tester

Ouvrez votre navigateur web et tapez le nom de domaine Traefik dans la barre d’adresse. Le mien est :

http://traefik.hakase-labs.io/

Vous serez redirigé vers la connexion HTTPS et on vous demandera l’authentification par nom d’utilisateur et mot de passe.

Connectez-vous avec l’utilisateur ‘mohammad’ et le mot de passe est ‘password’.

Et vous obtiendrez le tableau de bord Traefik comme ci-dessous.

Tableau de bord Traefik

Page d’état de santé de Traefik.

Page d'état de santé de Traefik

Le proxy inverse HTTP moderne Traefik a été installé en tant que conteneur Docker sur Ubuntu 18.04.

Référence

Share: X/Twitter LinkedIn

Recevez de nouveaux articles dans votre boîte de réception.

Aucun spam. Désabonnez-vous à tout moment.