Retour au blog

Docker vs Podman : Migration et bonnes pratiques

15 novembre 2025 Dedimarco
docker podman linux devops
Docker vs Podman : Migration et bonnes pratiques

Docker vs Podman : Migration et bonnes pratiques

La migration de Docker vers Podman est une décision de plus en plus fréquente chez les administrateurs système. Voici un retour d’expérience après plusieurs migrations en production.

Pourquoi Podman ?

Podman offre plusieurs avantages significatifs :

  • Pas de daemon : architecture rootless par défaut
  • Quadlets systemd : gestion native des conteneurs comme services
  • Compatibilité Docker : les commandes sont quasi identiques
  • Sécurité : pas besoin d’un utilisateur root pour lancer des conteneurs

Migration pas à pas

1. Conversion des Dockerfiles

Les Dockerfiles restent compatibles. Renommez simplement Dockerfile en Containerfile (optionnel) :

FROM node:22-alpine
WORKDIR /app
COPY package*.json ./
RUN npm install --production
COPY . .
EXPOSE 3000
CMD ["node", "server.js"]

2. Quadlets systemd

L’une des fonctionnalités les plus puissantes de Podman 5+ est le support natif des quadlets :

# /etc/containers/systemd/myapp.container
[Container]
Image=docker.io/library/node:22-alpine
PublishPort=3000:3000
Volume=/data/myapp:/app

[Service]
Restart=always

[Install]
WantedBy=default.target

3. Réseau bridge

Contrairement à Docker qui crée un bridge par défaut, Podman nécessite une configuration explicite :

podman network create mynetwork
podman run --network mynetwork ...

Pièges courants

ProblèmeDockerPodman
DNS interneAutomatiqueNécessite podman network create
host.docker.internalFonctionneNe fonctionne pas — utiliser la gateway IP
Restart policy--restart alwaysVia systemd Restart=always
Build contextdocker buildpodman build (identique)

Conclusion

La migration vers Podman demande quelques ajustements, notamment sur le réseau et la gestion des services. Mais les quadlets systemd offrent une intégration bien plus propre que les solutions tierces comme docker-compose.