A ce stade, Traefik fonctionne. On va ajouter Portainer à notre ensemble. On commence par créer un dossier où portainer pourra stocker ses données.
one@0ne-pc:~/dev/docker$ pwd
/home/one/dev/docker
one@0ne-pc:~/dev/docker$ mkdir portainer_data
On va rajouter une section portainer au fichier docker-compose.yml
portainer:
image: portainer/portainer-ce:latest
container_name: portainer
restart: unless-stopped
ports:
- 9000:9000
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- /home/one/dev/docker/portainer_data:/data
networks:
- proxy
labels:
- traefik.enable=true
- traefik.docker.network=proxy
- traefik.http.routers.portainer.rule=Host(`portainer.local`)
- traefik.http.services.portainer.loadbalancer.server.port=9000
Les deux volumes sont respectivement le socket docker et le répertoire des données de Portainer. On utilise le même réseau. Les labels sont réduits au strict minimum : on active, on choisi le réseau, on précise l’url ainsi que le port
On enregistre, on relance docker-compose up et on devrait pouvoir accéder à https://portainer.local
