Nous avons un serveur exécutant CentOS, sur lequel il existe plusieurs services dans des conteneurs Docker pour les séparer des changements d'hôte.
Vendredi dernier, nous avons effectué une mise à jour sur CentOS, et depuis lors, l'un de nos services démarre et se ferme immédiatement. Les 15 autres services sont très bien.
J'ai cloné la configuration du conteneur, changé le nom du conteneur et reconstruit avec le même problème: le conteneur démarre puis se termine sans aucun message.
Le conteneur est dérivé du conteneur de samba de David Personette . La commande réelle qui se ferme maintenant mais qui ne l'a pas été est:
exec ionice -c 3 smbd -FS
Dois-je rétrograder docker cela aura-t-il des effets secondaires? Y a-t-il autre chose que je puisse faire pour que cela fonctionne à nouveau? Nous avons choisi des conteneurs à abstraire du système d'exploitation, cette abstraction n'est-elle pas aussi bonne que prévu?
Réponses:
Le conteneur se fermera sans aucun commentaire, sauf si vous augmentez le niveau de débogage. Vous pouvez utiliser quelque chose comme
--debuglevel=4
.Une fois que vous avez fait cela, reconstruit et redémarrez le conteneur, vous devriez obtenir quelque chose à la fin comme:
Et cela pointe vers la solution, changez l'
smbd
invocation en:et votre conteneur ne devrait plus sortir directement.
Je ne sais pas ce qui cause ce changement incompatible en amont, ni pourquoi cela n'a pas été testé par rapport aux entrées Dockerhub existantes.
J'ai également cassé deux de mes conteneurs lors de la mise à niveau vers la version 1.11. et lors de la rétrogradation à 1.10.3, a rencontré le
Cannot stop container .... Container does not exist: container destroyed
bug redouté . J'ai dû arrêter Docker, effacer toute l'histoire, donc je ne peux pas vraiment le recommander.la source