Compose: Docker-Compose-Up-Interaktiv-Modus

Erstellt am 5. März 2016  ·  4Kommentare  ·  Quelle: docker/compose

Ich habe dies in meiner Docker-Datei:

...
CMD bash on-start.sh

Ich kann es damit ausführen und bekomme nach Wunsch eine interaktive Shell.

$ docker run -it imagename
$ _

Aber es funktioniert nicht dabei:

$ docker-compose up
...
exited with code 0

Wenn ich das mache, funktioniert es auch, aber abhängige Dienste werden nicht gestartet.

$ docker-compose run myservice 
$ _

Meine Versionen:

$ docker --version
Docker version 1.10.0, build 590d5108
$ docker-compose --version
docker-compose version 1.6.0, build d99cad6
kinquestion

Hilfreichster Kommentar

Sie möchten wahrscheinlich stdin_open: true in Ihrer Compose-Datei verwenden.

Alle 4 Kommentare

Sie möchten wahrscheinlich stdin_open: true in Ihrer Compose-Datei verwenden.

Das ist erwartetes Verhalten. up ist nicht interaktiv. Es können mehrere Container gestartet werden, sodass Sie kein einziges Terminal haben können, für das stdin für mehrere Container geöffnet ist.

run sollte tun, was Sie wollen. Wenn Sie depends_on , werden Abhängigkeiten ab Compose 1.6.2 gestartet (der Fehler wurde in Compose 1.6.1 behoben), sodass Sie ebenfalls ein Upgrade durchführen müssen.

@nephin
Daniel, ich muss mich bei dir für deinen Hinweis zu diesem Thema bedanken. Ich habe zwei Tage lang Probleme damit, einen Container in einem interaktiven Modus auf einem Knotenserver zum Laufen zu bringen, wo ich auch einige Daten über das Terminal im Back-End eingeben muss. Der Wortlaut Ihrer Notiz hat mich dazu gebracht, mein Problem aus einer anderen Richtung zu betrachten. Ein langes, langsames Lesen der Docker-Kompositionsdetails (einschließlich der Ausführungsmethode) hat bei mir wirklich funktioniert. Danke vielmals.

Ich wollte einen interaktiven Zugriff auf die Python-Debugger-PDF erhalten, die in einer Docker-Compose-Umgebung ausgeführt wird. Bis ich das mit docker attach myservice

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen