Portainer sous Docker: comment l’installer ?

Portainer constitue une manière de gérer des environnements de conteneurs en toute simplicité. Le programme est installé en tant que conteneur Docker et peut dès lors être exécuté à peu près partout. Nous vous exposons sa routine d’installation et vous faisons part de quelques astuces utiles.

Conseil

Utilisez Portainer pour gérer vos clusters Kubernetes– sur un vServer IONOS.

Qu’est-ce que Portainer?

Nous vous avions déjà présenté Portainer comme une alternative à OpenShift flexible. À la différence d’OpenShift, Portainer n’est pas une distribution Kubernetes à part entière. Ce programme open source a plutôt pour fonction d’unifier et de centraliser des infrastructures de clusters existantes. Une interface utilisateur graphique en ligne est employée à cette fin. En plus de l’« Edition Community » (CE) gratuite, il existe une version payante offrant un support destiné aux entreprises.

L’objectif principal de Portainer est d’unifier la gestion de déploiements Kubernetes existants. Portainer permet aux équipes de DevOps de gérer, configurer et sécuriser de manière centralisée des environnements multi-clusters. Les équipes de développement tirent également profit de ce logiciel ; à titre d’exemple, Portainer facilite le déploiement, la gestion et le dépannage des applications.

Ce qui est pratique avec Portainer, c’est qu’il ne se limite pas à être une interface de gestion pour Kubernetes; la gestion de cluster et de conteneur basée sur Docker et Docker Swarm fait également partie de son périmètre fonctionnel. Le programme peut être installé n’importe où, ou presque. Par conséquent, son installation est possible dans les environnements Clouds, sur les edge devices de même qu’au sein de votre propre infrastructure informatique de bureau. Nous vous montrons comment installer Portainer sous Docker.

Conseil

Suivez notre Tutoriel Docker pour configurer Docker sur votre système local.

Comment puis-je installer Portainer sur Docker ?

Jetons d’abord un œil à l’architecture basique de Portainer. Celle-ci réunit deux composants qui sont installés individuellement en tant que conteneurs Docker:

  1. Un serveur Portainer en tant qu’instance centralisée. Le serveur Portainer contient une base de données et nécessite une couche de stockage pour stocker des données. Le serveur Portainer gère l’environnement Docker local et, si nécessaire, d’autres environnements connectés via des agents.
  2. Si nécessaire, plusieurs autres agents Portainer gèrent les environnements supplémentaires. Une instance de l’agent Portainer fonctionne sur chaque nœud de cluster à gérer.

Les serveurs comme les agents Portainer sont exécutés en tant que conteneurs sur des infrastructures existantes. Les agents communiquent avec le serveur ; pour que ceci fonctionne, le serveur et les agents doivent se trouver sur le même réseau. De plus, on retrouve les edge agents, qui sont exécutés en tant qu’instances sur les appareils distants. La particularité de ces derniers est le fait qu’ils communiquent avec le serveur par-delà les frontières des réseaux. Un tunnel TLS chiffré est utilisé pour cela.

Nous déroulons ensuite l’installation du serveur et de l’agent Portainer sous Docker (autonome). Nous nous référons ici à l’Edition Community (CE) de Portainer version 2.9.3 et utilisons Docker Desktop comme base. Docker Desktop peut être exécuté sous Windows et macOS ; l’installation sous Linux est quasiment identique. Veuillez noter qu’en production, les serveurs et agents sont exécutés sur des machines différentes.

Installer le Serveur Portainer sous l’Installateur Docker Desktop

Étant donné que le serveur Portainer est disponible en tant qu’image Docker, l’installation s’avère relativement simple. Nous allons vous guider tout au long du processus étape par étape.

  1. Pour commencer, on crée un volume Docker qui contiendra les données gérées par le serveur Portainer :
docker volume create Portainer_data
  1. Ensuite, on vérifie que le volume Docker nommé « Portainer_data » existe :
docker volume ls
  1. À présent, passons à l’installation du serveur Portainer en tant que tel. On lance le serveur en tant que conteneur Docker depuis l’image Docker. Si l’image n’est pas présente en local, elle sera automatiquement téléchargée :
docker run -d -p 8000:8000 -p 9443:9443 --name Portainer \
    --restart=always \
    -v /var/run/docker.sock:/var/run/docker.sock \
    -v Portainer_data:/data \
    cr.Portainer.io/Portainer/Portainer-ce:2.9.3
  1. Ensuite, on vérifie si le conteneur Docker intitulé « Portainer » s’exécute :
docker ps

Configurer le serveur Portainer sous Docker

Si le serveur Portainer a été correctement installé, l’interface Web Portainer sera accessible sur l’hôte local au port spécifié. Dans le cas présent, il s’agit du port 9443. Il est à présent temps de configurer le serveur Portainer.

  1. Pour commencer, on appelle l’interface Web Portainer dans le navigateur : https://localhost:9443.
  2. Lorsque l’on utilise Portainer pour la première fois, on crée un compte utilisateur administrateur, puis on configure Portainer.

Par défaut, l’installation Portainer utilise un certificat SSL auto-signé pour sécuriser l’interface Web via HTTPS. Une fois qu’on y a accédé, un message d’avertissement peut apparaître dans le navigateur, selon le navigateur et le système d’exploitation. Ceci peut être outrepassé en quelques clics, tel qu’exposé dans les captures d’écran suivantes.

Mettre à niveau le serveur Portainer sous Docker Desktop

Le processus de mise à niveau de Portainer est très proche de la routine d’installation. Par conséquent, nous vous exposons le processus ici également :

  1. Pour commencer, on interrompt le conteneur en cours d’exécution du serveur Portainer :
docker stop Portainer
  1. Par la suite, on supprime le conteneur :
docker rm Portainer
  1. En préparation de la mise à niveau, on télécharge l’image serveur Portainer la plus récente :
docker pull cr.Portainer.io/Portainer/Portainer-ce:2.9.3
  1. Pour mener à bien la mise à niveau, on redémarre le conteneur serveur Portainer depuis l’image actuelle :
docker run -d -p 8000:8000 -p 9000:9000 -p 9443:9443 \
    --name=Portainer --restart=always \
    -v /var/run/docker.sock:/var/run/docker.sock \
    -v Portainer_data:/data \
    cr.Portainer.io/Portainer/Portainer-ce:2.9.3

Installer l’agent Portainer sous Docker

L’agent Portainer n’est pas nécessaire pour une installation locale sous Docker. Si vous souhaitez gérer plusieurs environnements d’une manière centralisée, vous installez l’agent sur chaque machine à connecter. L’agent Portainer étant disponible en tant que conteneur Docker, l’installation est directe. Tout ce que vous avez à faire, c’est exécuter la commande suivante sur le système cible :

docker run -d -p 9001:9001 --name Portainer_agent \
    --restart=always \
    -v /var/run/docker.sock:/var/run/docker.sock \
    -v /var/lib/docker/volumes:/var/lib/docker/volumes \
    cr.Portainer.io/Portainer/agent:2.9.3