Membre depuis le 24/07/2024
c'est parce que ton script python tourne en PID 1 et il sait pas 'récolter' (reap) les process fils qui se terminent. ils restent en état zombie
Membre depuis le 13/03/2019
exact. le PID 1 a un rôle spécial sous Linux. utilise `tini` comme init process dans ton Dockerfile, il va gérer les signaux et le nettoyage des zombies à ta place
# installe tini et change l'entrypoint
entrypoint ["/sbin/tini", "--", "python", "main.py"]
Membre depuis le 28/07/2022
ajouté tini et effectivement tous les process defunct disparaissent direct après exécution. propre !
Vous devez être connecté pour poster un message !
Recevoir les derniers articles gratuitement en créant un compte !
S'inscrire
zbruneau
Membre depuis le 28/07/2022
yo, j'ai remarqué un truc bizarre sur mon serveur de prod. j'ai un container qui tourne depuis une semaine et quand je fais un `docker top`, je vois des centaines de process `[python]`. ça finit par bouffer toute la table des pid et je peux plus rien lancer sur la machine
pourtant mon script fait juste des appels subprocess classiques...