2016-06-01 15 views
0

Ich habe versucht, einen Dienst mit chat.service Unit-Datei auf einem CoreOS starten und es ist fehlgeschlagen:CoreOS Einheit konnte nicht auf Gestartet

// chat.service 
[Unit] 
Description=ChatApp 

[Service] 
ExecStartPre=-/usr/bin/docker kill simplechat1 
ExecStartPre=-/usr/bin/docker rm simplechat1 
ExecStartPre=-/usr/bin/docker pull jochasinga/socketio-chat 
ExecStart=/usr/bin/docker run -p 3000:3000 --name simplechat1 jochasinga/socketio-chat 

fleetctl list-units zeigt:

UNIT   MACHINE      ACTIVE SUB 
chat.service cfe13a03.../<virtual-ip> failed failed 

Allerdings, wenn ich die chat.service geändert nur :

// chat.service 
[Service] 
ExecStart=/usr/bin/docker run -p 3000:3000 <mydockerhubuser>/socketio-chat 

Es lief gut. fleetctl list-units zeigt:

UNIT   MACHINE      ACTIVE SUB 
chat.service 8df7b42d.../<virtual-ip> active running 

EDIT journalctl -u chat.service Verwendung Ich habe:

Jun 02 00:02:47 core-01 systemd[1]: Started chat.service. 
Jun 02 00:02:47 core-01 systemd[1]: chat.service: Main process exited, code=exited, status=125/n/a 
Jun 02 00:02:47 core-01 docker[8924]: docker: Error response from daemon: failed to create endpoint clever_tesla on network brid 
Jun 02 00:02:47 core-01 systemd[1]: chat.service: Unit entered failed state. 
Jun 02 00:02:47 core-01 systemd[1]: chat.service: Failed with result 'exit-code'. 
Jun 02 00:02:58 core-01 systemd[1]: Stopped chat.service. 
Jun 02 00:03:08 core-01 systemd[1]: Stopped chat.service. 

Was ich in der ersten chat.service Unit-Datei falsch gemacht hatte? Jede Anleitung wird geschätzt.

Lauf Vagrant version of CoreOS (stable) auf Mac OS X.

Antwort

1

Ihre ExecStartPre = Befehl scheint nicht zu einem Docker subcommand in ihm zu haben. Wollten Sie pull verwenden?

die Zeitschrift für das Gerät lesen, sollten Sie weitere Informationen erhalten: journactl -u chat.service

+0

Dang das war ein dummer Fehler. Lass mich das reparieren und sehen, ob es funktioniert und ich komme zurück. Danke für den Zeitschriftentipp. – PieOhPah

+0

Es scheint, als wäre das Problem nicht mit dem fehlenden 'Pull'. Ich habe die Unit-Datei aktualisiert und das Protokoll 'journalctl' hinzugefügt. Mit der ersten Version von 'chat.service' scheint es mit 'Signal' zu scheitern. – PieOhPah

0

Nach einem Blick in die Zeitschrift mit @ Rob Vorschlag und einige der Forschung, scheint es, dass Docker nicht einen Endpunkt am Port 3000, da auf schaffen könnte das Betriebssystem gab es einen laufenden Docker-Prozess an diesem Port.

Stoppen Sie einfach den Prozess mit docker stop <processname> und Neustart mit fleetctl start chat löste das Problem.

Verwandte Themen