Q. Arbeits Wie laufen Docker-komponieren in detach ModusDocker freistehend compose Modus nicht
Ich versuche Docker-komponieren in detach-Modus laufen, aber es wird beendet, nachdem es gerade laufen gelassen, aber ich kann das gleiche Bild im Detach-Modus mit dem Befehl 'docker run' ausführen.
Run Bild mit 'Andockfensters run' -Befehl (Arbeiten in detach Modus)
docker run -itd ubuntu:16.04
unten ausgegeben von Befehl 'Andockfensters ps -a'
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES d84edc987359 ubuntu:16.04 "/bin/bash" 4 seconds ago Up 3 seconds romantic_albattani
Run dasselbe Bild mit dem Befehl 'docker-compose up -d' (funktionierte nicht im Detach-Modus)
unten ist mein Docker-compose.yml Datei
version: '3' services: ubuntu: image: ubuntu:16.04
'Docker-compose ps' Befehlsausgabe
Name Command State Ports ---------------------------------------------------- composetesting_ubuntu_1 /bin/bash Exit 0
Update: Bei der Verwendung von tty: true Parameter in docker- compose.yml Datei wie unten
version: '3'
services:
ubuntu:
image: ubuntu:16.04
tty: true
dann Konsole wird keinen Befehl ausführen, wie wenn ich 'ls -l' eingeben Befehlskonsole reagiert nicht.
ja, es funktioniert aber wie. Auch hier ist 'tty: true' kein Bestandteil der Dokumentation https://docs.docker.com/compose/compose-file/. Vielen Dank :) –
@AnandSuthar Dieser Link geht an das Format der Version 3 zu verfassen - beachten Sie, dass dieses Beispiel Version 2 ist; Dieses Dokument enthält "tty". https://docs.docker.com/compose/compose-file/compose-file-v2/ –
@AnandSuthar Und um Ihre Frage zu beantworten, 'tty: true' emuliert nur ein tty, das gleiche Ding' docker run -t' tut (wie in Ihrem Beispiel in der Frage verwendet). Wenn ein TTY vorhanden ist, bleibt die Shell im Einzelmodus aktiv. ohne eine tty, wird es nichts anderes zu tun und zu verlassen finden. –