Aller au contenu

Portainer

portainer
Portainer est un conteneur qui sert à gérer des conteneurs de façon graphique.

Installation de Portainer

1. Créer un volume pour le conteneur
docker volume create portainer_data
2. Pour lancer le conteneur il faut utiliser docker run, l’application tournera sur le port 9000
docker run -d -p 8000:8000 -p 9000:9000 --name portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce
Pour lancer Portainer avec docker-compose, créer un fichier docker-compose.yml
version: '3'
services:
  portainer:
    image: portainer/portainer-ce:latest
    ports:
      - 9000:9000
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
      - portainer_data:/data
    restart: always
volumes:
  portainer_data:
Et le lancer avec la commande docker-compose up -d
docker-compose up -d
3. Accéder au conteneur à http://localhost:9000
4. Il vous sera ensuite demandé de créer un mot de passe Administrateur afin d’accéder à l’application. Pour accéder aux conteneurs locaux, aller sur Home puis sur « local » cliquer sur Live Connect
Capture decran 2023 02 16 110748

Ajouter un stack docker-compose

1. Pour déployer un stack docker-compose, aller dans Stacks puis cliquer sur + Add stack
Capture decran 2023 02 16 110921
2. Nommer votre conteneur puis sélectionner Web Editor et coller votre docker-compose (ici Bitwarden pour exemple).
Capture decran 2023 02 16 111840
3. Pour finaliser le déploiement du stack cliquer sur Deploy the stack
4. Aller dans Containers pour voir votre conteneur
Capture decran 2023 02 16 112104
Capture decran 2023 02 16 112159

Ajout d'environnement Docker

Pour ajouter un autre environnement à Portainer, il faut déployer sur une autre instance le conteneur Portainer_agent, et ajouter l’adresse à son Portainer.
1. Sur son instance Portainer, aller dans l’onglet Environments et cliquer sur le bouton + Add environment
Capture decran 2023 06 06 105312
2. Choisir Docker Standalone et cliquer sur Start Wizard
Il faut ensuite retourner sur l’instance Portainer que vous voulez connecter et lancer le conteneur portainer_agent avec docker run ou docker-compose
Via docker run : 
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 portainer/agent
Via docker-compose :
version: '3'

services:
  agent:
    image: portainer/agent
    container_name: portainer_agent
    restart: unless-stopped
    security_opt:
      - no-new-privileges:true
    volumes:
      - /etc/localtime:/etc/localtime:ro
      - /var/run/docker.sock:/var/run/docker.sock:ro
      - /var/lib/docker/volumes:/var/lib/docker/volumes
    ports:
      - 9001:9001
3. Retourner sur son instance Portainer, et nommer le nouvel environnement et mettre l’adresse IP et le port de votre autre environnement et cliquer sur le bouton « Connect » 

Mettre à jour portainer_agent

1. Se connecter sur la machine hôte
2. Télécharger la dernière version de l’image de portainer_agent
docker pull portainer/agent:latest
3. Arreter et supprimer le conteneur portainer_agent :
docker stop portainer_agent
docker rm portainer_agent 
4. Relancer le conteneur portainer_agent :
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 portainer/agent