tutorial hub engine community docker

hub - docker tutorial



¿Cuándo usaría `--interactive` sin`--tty` en un contenedor Docker? (1)

Dado que -i mantiene STDIN abierto incluso si no está conectado, permite la composición (tuberías).
Por ejemplo:

docker run ubuntu printf "line1/nline2/n" | docker run -i ubuntu grep line2 | docker run -i ubuntu sed ''s/line2/line3/g''

(Fuente: número 14221 )

O:

$ echo hello | docker run -i busybox cat hello

(Fuente: número 12401 )

Ahora imagine que no está delante de un teclado y que se usa en un script donde realmente puede escribir en los procesos a través de algo mejor que un shell | : ejemplo github.com/docker/docker/blob/…

Hice algo de googlear y no he tenido la suerte de encontrar un caso en el que hubiera ejecutado la ejecución de docker run -i some_image lugar de la docker run -it some_image .

Si ejecuto docker run -i --name sample some_image bash , el contenedor se ejecuta en primer plano, pero no puedo interactuar con él desde el shell en el que estoy. No puedo detenerlo con CTRL + C. Sin embargo, puedo abrir otro shell y ejecutar el docker exec -it sample bash y obtener acceso al contenedor.

Si ejecuto el docker run -i -d --name sample some_image bash , el contenedor se docker run -i -d --name sample some_image bash inmediatamente. Puedo reiniciarlo con el docker start sample y luego se mantiene activo, así que puedo ejecutar el docker exec -it sample bash e interactuar con él nuevamente.

Sin embargo, en todos estos casos, finalmente termino usando -it para interactuar con mis contenedores. ¿En qué mundo no necesitaría la bandera -t ?

Aclamaciones