Podman est un moteur de conteneurs open-source conçu pour exécuter, gérer et déployer des conteneurs sans nécessiter de daemon en arrière-plan. Contrairement à Docker, Podman ne fonctionne pas en tant que service root unique et permet l'exécution de conteneurs sans privilèges root, améliorant ainsi la sécurité.
Podman est un moteur de conteneurs open-source conçu pour exécuter, gérer et déployer des conteneurs sans nécessiter de daemon en arrière-plan. Contrairement à Docker, Podman ne fonctionne pas en tant que service root unique et permet l'exécution de conteneurs sans privilèges root, améliorant ainsi la sécurité.
Podman est disponible dans les dépôts officiels de nombreuses distributions :
sudo apt update sudo apt install -y podman
sudo dnf install -y podman
sudo pacman -S podman
sudo yum install -y podman
Podman est disponible via Homebrew :
brew install podman
Podman peut être installé via Chocolatey ou un exécutable.
choco install podman
podman --version
podman pull nginx
podman images
podman run -d --name mon-nginx -p 8080:80 nginx
podman ps
podman stop mon-nginx podman rm mon-nginx
podman rmi nginx
Podman permet d’exécuter des conteneurs en mode rootless (sans droits administrateurs) :
podman run -it --rm alpine sh
Podman permet de regrouper plusieurs conteneurs dans un pod, simulant ainsi Kubernetes :
podman pod create --name mon-pod -p 8080:80 podman run -dt --pod mon-pod nginx
Créer un volume nommé :
podman volume create mon-volume
Exécuter un conteneur en utilisant un volume :
podman run -d -v mon-volume:/data --name mon-conteneur nginx
Podman facilite l'intégration avec systemd pour exécuter des conteneurs en tant que services :
podman generate systemd --name mon-nginx > /etc/systemd/system/mon-nginx.service systemctl enable --now mon-nginx
| Fonctionnalité | Docker | Podman |
|---|---|---|
| Daemon | Oui | Non |
| Rootless | Expérimental | Oui |
| Commandes identiques | Oui | Oui |
| Compatibilité OCI | Oui | Oui |
| Pods intégrés | Non | Oui |
Podman est une alternative puissante et sécurisée à Docker, particulièrement adaptée aux environnements nécessitant une meilleure gestion des permissions et une intégration avec systemd. Grâce à sa compatibilité avec les commandes Docker, il offre une transition facile pour les utilisateurs souhaitant adopter une approche plus sécurisée et modulaire de la gestion des conteneurs.