191 votes

Docker : Le conteneur n'arrête pas de redémarrer encore et encore

J'ai déployé aujourd'hui une instance de MediaWiki en utilisant l'image docker appcontainers/mediawiki, et j'ai maintenant un nouveau problème pour lequel je ne trouve aucun indice. Après avoir essayé de s'attacher au conteneur frontal mediawiki en utilisant :

docker attach mediawiki_web_1

qui répond à Terminated sur ma configuration pour une raison que j'ignore, j'essaie aussi :

docker exec -it mediawiki_web_1 bash

J'obtiens quelque chose qui ressemble à un message d'erreur :

Error response from daemon: Container 81c07e4a69519c785b12ce4512a8ec76a10231ecfb30522e714b0ae53a0c9c68 is restarting, wait until the container is running

Et voilà mon nouveau problème, car ce conteneur ne cesse de redémarrer. Je peux voir qu'en utilisant docker ps -a qui renvoie toujours un STATUS de Restarting (127) x seconds ago .

Le problème est que je suis capable d'arrêter le conteneur (j'ai testé) mais le redémarrer semble le ramener dans sa boucle de redémarrage.

Une idée de ce qui pourrait être le problème ici ? L'ensemble fonctionnait correctement jusqu'à ce que j'essaie de l'attacher...

Je suis triste :-(

0 votes

J'ai réussi en supprimant complètement mon cache Docker, en utilisant forums.docker.com/t/how-to-delete-cache/5753/2 (J'ai également ajouté la balise -f à rmi). J'ai ensuite reconstruit mes conteneurs et ils ont fonctionné.

0 votes

Pour moi, il ne suffisait pas de supprimer les conteneurs et les images (comme décrit dans le lien de @alberto56), je devais également supprimer le volume associé. Une fois que j'ai fait cela, j'étais de retour dans les affaires.

0voto

Kigenyi Phillip Points 601

Essayez d'ajouter les paramètres suivants à votre fichier yml de docker

restart: "no"
  restart: always
  restart: on-failure
  restart: unless-stopped
  environment:
    POSTGRES_DB: "db_name"
    POSTGRES_HOST_AUTH_METHOD: "trust"

Le fichier final devrait ressembler à quelque chose comme ceci

postgres:
  restart: "no"
  restart: always
  restart: on-failure
  restart: unless-stopped
  image: postgres:latest
  volumes:
    - /data/postgresql:/var/lib/postgresql
  ports:
    - "5432:5432"
  environment:
    POSTGRES_DB: "db_name"
    POSTGRES_HOST_AUTH_METHOD: "trust"

4 votes

Pourquoi définir "redémarrer" plusieurs fois dans ce service ? Cela ne devrait-il pas être fait une seule fois ?

0voto

Mr.President Points 1

Vérifiez la partition où vous avez installé Docker. Dans la plupart des cas, la partition est à 100% de sa capacité, vous devrez donc peut-être vous pencher sur ce point.

-3voto

Shikha Mishra Points 1

Essayez d'exécuter

docker stop CONTAINER_ID & docker rm -v CONTAINER_ID

Merci

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X