interface de Portainer, logiciel de gestion de container docker

Installation de Portainer sur Docker

Cet article traitera de l’installation de Portainer sur Docker.

Je décomposerais cet article en deux grandes parties.

La première traitera de pourquoi j’utilise Portainer, puis la deuxième traitera de son installation grâce à docker-compose.

Portainer

Pourquoi Portainer ?

Portainer vous permet de visualiser graphiquement l’ensemble des données tournant sous Docker.

Installation de Portainer sur Docker - interface de Portnaire, logiciel de gestion de container docker
interface de Portainer

Vous pouvez en quelques cliques visualiser les réseaux créés, les images utilisées, l’état de tous vos container.

Installation de Portainer sur Docker - 
interface des container de Portainer
L’interface permet voir l’ensemble des containers facilement

Il simplifie grandement la gestion de vos applications, vous permettant par exemple de rajouter un container sur un réseau mac-vlan, ou d’examiner les logs pour un dé-bug.

Installation de Portainer sur Docker - Portainer facilite la visualisation des logs
Portainer facilite la visualisation des logs

Je trouve que ce logiciel est un must have, il m’a permis de souvent de-buguer mes container sans avoir à écrire une seule ligne de commande.

Installation de Portainer sur Docker

Pour effectuer l’installation de Portainer sur Docker, nous utiliserons le plugin docker compose.

Si vous avez suivi l’installation de mon article précédent, docker compose devrait déjà être installé.

Vous pouvez le vérifier en effectuant cette commande

sudo docker compose version

Vous devriez avoir ce retour :

Docker Compose version v2.29.7

On commence par créer notre répertoire de travail et on s’y déplace à l’intérieur.

mkdir portainer && cd portainer

On crée le fichier docker-compose.yml

sudo nano docker-compose.yml

Puis on déclare notre application

services:   #point d'entrée de notre application
  portainer:  #nom du service
    image: portainer/portainer-ce:latest  #nom de l'image à récupérer
    container_name: portainer #nom qui sera affecté au container
    ports:  #ports utilisés du type "hôte" : "vers container"
      - 9000:9000
    volumes: #on définit les volumes qui seront utilisés par l'application, du type nom du volume local : chemin du répertoire du container
      - portainer_data:/data
      - /var/run/docker.sock:/var/run/docker.sock
    restart: unless-stopped

volumes:  #on déclare les volumes
  portainer_data:

Vous noterez que les deux volumes sont déclarés différemment. Le premier est du type volume virtuel « volatile », alors que le deuxième est une copie du fichier docker.sock de l’hôte dans le container.

Je reviendrais sur des explications plus approfondies lors de prochains billets.

Une fois que vous avez finit d’écrire votre fichier yml, vous pouvez le sauvegarder en effectuant CTRL+O, puis fermer le fichier avec CTRL+X.

Nous pouvons maintenant lancer la création de notre container avec la commande suivante :

sudo docker compose up -d

Vous verrez alors docker télécharger l’image, et créer le container.

Vous pouvez ensuite accéder à Portainer en entrant dans votre navigateur https://ip-hote:9000.

Lors de la création du container, Portainer génère des certificats self-signed.

Vous aurez donc un message d’avertissement il suffira de cliquer sur avancé, puis continuer la connexion.

Conclusion

Nous avons vu pourquoi et comment faire l’installation de Portainer sur Docker.

Portainer nous permet très simplement d’administrer nos containers Docker que ce soit dans la visualisation des logs, l’ajout de réseau, ou modifier les status des containers.