Portainer avec Podman
Portainer peut fonctionner avec Podman en utilisant le socket Podman à la place du socket Docker.
Prérequis
Activer le socket Podman :
$ systemctl --user enable --now podman.socket
Vérifier que le socket est actif :
$ systemctl --user status podman.socket
● podman.socket - Podman API Socket
Loaded: loaded
Active: active (listening)
Le socket se trouve dans : $XDG_RUNTIME_DIR/podman/podman.sock
Installation de Portainer
Créer le volume :
$ podman volume create portainer_data
Lancer Portainer :
$ podman run -d \
--name portainer \
--restart=always \
-p 8000:8000 \
-p 9443:9443 \
-v $XDG_RUNTIME_DIR/podman/podman.sock:/var/run/docker.sock:Z \
-v portainer_data:/data \
docker.io/portainer/portainer-ce:latest
Le :Z à la fin du montage du socket est nécessaire pour SELinux.
Accès à l’interface
Ouvrir : https://votre-serveur:9443
Démarrage automatique avec systemd
Générer le fichier systemd :
$ podman generate systemd --new --name portainer > ~/.config/systemd/user/portainer.service
Activer le service :
$ systemctl --user daemon-reload
$ systemctl --user enable portainer.service
Pour que les services utilisateur démarrent au boot (sans session ouverte) :
$ loginctl enable-linger mon_utilisateur
Limitations avec Podman
Certaines fonctionnalités de Portainer peuvent être limitées avec Podman :
- La gestion des réseaux peut différer
- Les stacks Docker Compose peuvent nécessiter des adaptations
- La gestion des volumes peut varier légèrement
Pour une expérience optimale, utiliser Portainer avec Docker reste recommandé.