Dans cette section, notre attention sera dirigée vers le déploiement d’une instance de Træfik à l’aide de Docker & Compose. Nous procéderons ensuite à la configuration et à l’exposition de notre premier service géré à savoir docusaurus.

Nous allons utiliser une solution open source de reverse proxy à savoir Traefik.

Un serveur mandataire inverse, également appelé proxy inverse, est un type de serveur positionné en amont de serveurs web. Contrairement à un serveur proxy traditionnel qui autorise un utilisateur à accéder à Internet, le proxy inverse permet à un utilisateur d’Internet d’accéder à des serveurs interne.

Les plus connus et utilisés sont NGINX, Apache et HAProxy.

Traefik en quelques point:

  • il est développé en Go
  • il est performant et léger
  • il fonctionne parfaitement dans un conteneur Docker
  • Træfik propose de l’auto-discovery de services
  • Træfik gère le SSL et génère des certificats Let’s Encrypt automatiquement
  • il est possible de monitorer les services et d’avoir des détails via une interface d’administration
  • Træfik repose sur une architecture à base de middlewares
  • il supporte le load-balancing

L’objectif est de permettre la découverte et l’exposition automatique des services que nous souhaitons fournir par Træfik, en assurant une attribution appropriée des URL.

C’est partie…. Il va falloir commencer par déclarer un réseau Docker (ici je l’appel web) dont le but est de permettre aux différents conteneurs à exposer des services, de communiquer avec le routeur Træfik.

$ docker network create web

Se réseau sera appelé dans tous les fichiers docker-compose.yml des services à exposer, y compris celui de notre instance Træfik.

Il va falloir commencer par créer un enregistrement CNAME dans les DNS de votre nom de domaine chez votre registrar. On va créer le sous domaine docusaurus.tartenpion.com

Vous pouvez également rajouter le nom de domaine sur votre Freeebox, en allant dans les paramètres de la freebox -> nom de domaine et ajouter un nom de domaine.

On va créer notre premier fichier docker-compose.yml mais avant un peu de console pour gérer notre espace de travail. Création d’un répertoire traefik pour y déposer le fichier.

$ mkdir traefik && cd traefik
$ nano docker-compose.yml

Et voici la structure de mon fichier avec traefik (vous pouvez également consulter la doc officielle) ainsi que docusaurus avec certificat let’s encrypt et redirection vers le https.

---
version: "3.3"

services:

  traefik:
    image: "traefik:v2.10"
    container_name: "traefik"
    command:
      - --api.insecure=true
      - --providers.docker=true
      - --providers.docker.exposedbydefault=false
      - --entrypoints.web.address=:80
      - --entrypoints.web.http.redirections.entryPoint.to=websecure
      - --entrypoints.websecure.address=:443
      - --certificatesresolvers.le.acme.httpchallenge=true
      - --certificatesresolvers.le.acme.httpchallenge.entrypoint=web
      - --certificatesresolvers.le.acme.email=<VotreAdresseEmail>
      - --certificatesresolvers.le.acme.storage=/letsencrypt/acme.json
    ports:
      - "80:80"
      - "443:443"
    volumes:
      - "/var/run/docker.sock:/var/run/docker.sock:ro"
      - ./letsencrypt:/letsencrypt

  docusaurus:
    image: awesometic/docusaurus
    container_name: docusaurus
    labels:
      - traefik.enable=true
      - traefik.http.routers.docusaurus.rule=Host(`<votreNomDeDomaine`)
      - traefik.http.routers.docusaurus.entrypoints=websecure
      - traefik.http.routers.docusaurus.tls=true
      - traefik.http.routers.docusaurus.tls.certresolver=le
networks:
  web:
    external: true

Il n’y a plus qu’à se rendre sur l’adresse docusaurus.tartenpion.com pour voir sa page web s’afficher !!

Retrouvez sur l’article suivant comment sauvegarder sa base sql wordpress et la transférer sur son disque freebox.

Catégories : Tutos

2 commentaires

Jérome IAvarone - Formateur IA Générative · 16 février 2024 à 23h23

Je suis d’accord avec l’importance de Traefik pour la gestion des services Docker et la configuration automatique des URL. C’est une solution performante et efficace pour simplifier le déploiement. Merci pour ces explications claires et concises.

Installer Docker & Docker compose - DevOps · 18 janvier 2024 à 10h15

[…] Installation de traefik et docusaurus […]

Laisser un commentaire

Emplacement de l’avatar

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.

Site développé et maintenu par la société DevNet-Solutions.fr

ErosiaX est une application libertine dédiée aux rencontres libertines, offrant un espace sécurisé et discret pour explorer des affinités d'érotismes diverses. Favorisant la liberté et le respect mutuel, ErosiaX permet à ses membres libertins de découvrir des partenaires partageant des intérêts similaires dans une communautée libertine ouverte et accueillante.