2016-05-24 13 views
8

Ho uno stack ELK in esecuzione sulla finestra mobile su Ubuntu. Occasionalmente il contenitore elasticsearch termina a causa di una brutta query o di un messaggio errato che è previsto comportamento nel nostro ambiente di sviluppo.Docker non può collegarsi a un contenitore non funzionante - risolto con un riavvio

Il problema che abbiamo è che dopo che il contenitore ES termina, non è possibile riavviare il contenitore Logstash a causa del seguente errore:

Cannot link to a non running container: /elasticsearch AS /logstash/elasticsearch 

Lista completa dei comandi sono:

$ sudo docker stop logstash 
$ sudo docker start elasticsearch 
$ sudo docker start logstash 
Cannot link to a non running container: /elasticsearch AS /logstash/elasticsearch 

Ho verificato che il contenitore ES viene effettivamente ripristinato e posso connettermi a ES tramite curl ma il contenitore logstash non verrà avviato.

Il contenitore logstash è configurato con il seguente link:

/elasticsearch:/logstash/elasticsearch 

Docker versione Info:

$ docker version 
Client: 
Version:  1.11.0 
API version: 1.23 

$docker --version  
Docker version 1.11.0, build 4dc5990 

riavviare l'intero VM risolve i problemi e mi permette di riavviare correttamente tutti i contenitori e tutto è buono, finché ES non si risolve di nuovo.

Sebbene non sia la fine del mondo, preferirei evitare di dover riavviare per risolvere il problema.

Qualche idea?

+0

Quali sono i tuoi pensieri su finestra mobile-comporre? Le versioni più recenti avranno i contenitori tutti su una rete insieme senza dichiarare i collegamenti, quindi dovresti essere in grado di evitare questo problema e utilizzare "dipende da:" per impostare l'ordine di avvio dei tuoi contenitori. Avevo problemi simili con i collegamenti e mi tiravo fuori i capelli ... Altrimenti, prova a rimuovere i contenitori (se ci sono quelli fermati vecchi in giro) che a volte mi hanno aiutato in passato ... –

risposta

15

Mi capita anche a volte, l'ultima volta era oggi. È possibile evitare il riavvio eseguendo solo

sudo service docker restart

(o comando simile seconda del sistema operativo)

Problemi correlati