Vérification et depannage¶
Checklist complète pour valider l'installation, et solutions aux problèmes courants.
Checklist post-install¶
| Commande | Vérifié | Résultat attendu |
|---|---|---|
sysctl vm.max_map_count | Parametre noyau | 524288 |
podman --version | Podman installe | podman version 4.x.x |
buildah --version | Buildah installe | buildah version 1.x.x |
skopeo --version | Skopeo installe | skopeo version 1.x.x |
podman-compose --version | Podman Compose installe | Version affichee |
systemctl --user status podman.socket | Socket utilisateur | active (listening) |
loginctl show-user "$USER" -p Linger | Lingering actif | Linger=yes |
systemctl --user status podman-compose-monapp | Service actif | active (running) |
podman ps | Conteneurs | Au moins 1 conteneur en cours |
curl -s http://localhost:8080 | Accès HTTP | <h1>Ca marche !</h1> |
Executez tout d'un coup :
echo "--- Parametres noyau ---"
sysctl vm.max_map_count
echo ""
echo "--- Versions ---"
podman --version
buildah --version
skopeo --version
podman-compose --version
echo ""
echo "--- Socket Podman ---"
systemctl --user status podman.socket --no-pager
echo ""
echo "--- Lingering ---"
loginctl show-user "$USER" -p Linger
echo ""
echo "--- Service ---"
systemctl --user status podman-compose-monapp.service --no-pager
echo ""
echo "--- Conteneurs ---"
podman ps
echo ""
echo "--- HTTP ---"
curl -s http://localhost:8080
Test de reboot¶
Le vrai test
Le but de ce setup est le démarrage automatique. Redemarrez la machine et verifiez que tout revient sans intervention :
Après le reboot, sans vous connecter en SSH d'abord (le lingering fait le travail), attendez une minute puis testez depuis une autre machine :
Si ca répond, le setup est complet.
Depannage¶
Conteneur qui ne démarré pas après reboot¶
Symptome : le service est inactive après reboot.
Cause probable : lingering non active.
Si Linger=no :
Puis redemarrez le service :
Permission denied sur les volumes¶
Symptome : le conteneur démarré mais affiche Permission denied en accedant aux fichiers montes.
Cause : SELinux bloque l'accès. Le flag :Z est manquant dans le volume.
Dans docker-compose.yml, ajoutez :Z à la fin du montage :
Puis relancez :
Port déjà utilisé¶
Symptome : Error: binding to port 8080: address already in use
Identifiez le processus qui occupe le port :
Arretez le processus concerne ou changez le port dans docker-compose.yml.
Image non trouvee¶
Symptome : Error: short-name resolution enforced but cannot prompt
Le registre n'est pas configuré dans /etc/containers/registries.conf. Verifiez :
Doit contenir docker.io. Sinon, revenez à la page Prerequis.
Ou utilisez le nom complet de l'image :
Service qui redémarré en boucle¶
Symptome : systemctl --user status affiche des redémarrages répétés.
Consultez les logs :
Causes fréquentes :
- Image introuvable (voir ci-dessus)
- Erreur dans
docker-compose.yml(syntaxe YAML) - Port occupe par un autre service
- Volume pointe vers un répertoire inexistant
Référence rapide¶
| Action | Commande |
|---|---|
| Lister les conteneurs | podman ps -a |
| Logs d'un conteneur | podman logs <nom> |
| Logs du service | journalctl --user -u podman-compose-monapp -f |
| Redémarrer le service | systemctl --user restart podman-compose-monapp |
| Recharger après modif unit | systemctl --user daemon-reload |
| Nettoyer les images inutilisees | podman image prune -a |
| Espace disque conteneurs | podman system df |