Skip to main content

Commandes Podman de base

Commandes Podman essentielles

Les commandes Podman sont quasiment identiques à celles de Docker. Voici les principales.

Gestion des images

Télécharger une image :

$ podman pull docker.io/library/nginx

Lister les images :

$ podman images
REPOSITORY               TAG         IMAGE ID      CREATED      SIZE
docker.io/library/nginx  latest      a6bd71f48f68  2 weeks ago  191 MB

Supprimer une image :

$ podman rmi nginx

Gestion des conteneurs

Lancer un conteneur :

$ podman run -d --name mon_nginx -p 8080:80 nginx

Lister les conteneurs :

$ podman ps
$ podman ps -a  # tous les conteneurs

Arrêter / Démarrer / Supprimer :

$ podman stop mon_nginx
$ podman start mon_nginx
$ podman rm mon_nginx

Logs et exécution

Voir les logs :

$ podman logs mon_nginx
$ podman logs -f mon_nginx

Exécuter une commande dans un conteneur :

$ podman exec -it mon_nginx /bin/bash

Pods : la spécificité de Podman

Podman permet de créer des pods, comme Kubernetes. Un pod regroupe plusieurs conteneurs qui partagent le même réseau.

Créer un pod :

$ podman pod create --name mon_pod -p 8080:80

Ajouter des conteneurs au pod :

$ podman run -d --pod mon_pod --name nginx nginx
$ podman run -d --pod mon_pod --name php php:fpm

Lister les pods :

$ podman pod ls
POD ID        NAME      STATUS   CREATED        INFRA ID      # OF CONTAINERS
a1b2c3d4e5f6  mon_pod   Running  2 minutes ago  f6e5d4c3b2a1  3

Arrêter et supprimer un pod :

$ podman pod stop mon_pod
$ podman pod rm mon_pod

Génération de fichiers systemd

Podman peut générer des fichiers systemd pour démarrer les conteneurs au boot :

$ podman generate systemd --new --name mon_nginx > ~/.config/systemd/user/mon_nginx.service
$ systemctl --user enable mon_nginx.service
$ systemctl --user start mon_nginx.service