Docker versión 17.06.0-ce
Estoy estudiando Docker viendo un video curso.
El profesor muestra:
sudo docker run -ti ubuntu /bin/bash
Ejecute docker con la imagen ubuntu. Y lo que me preocupa es /bin/bash\
.
man docker run
muestra que /bin/bash
es un comando. Es decir docker run IMAGE [COMMAND]
. Bueno, esta bien. ¿Pero cuál es la diferencia entre
sudo docker run -ti ubuntu
y
sudo docker run -ti ubuntu /bin/bash
Para mi no hay ninguno. Y el profesor no centra la atención en el comando. Dijo que solo estamos ejecutando docker. Fue su primer comando en el curso. Y luego muestra que hemos estado aislados de la máquina host, podemos arruinar libremente lo que queremos sin ningún daño (como rm -rf / bin).
Lo comprobé:
$ sudo docker run -ti ubuntu
root@aaf7cd26fe18:/# echo $SHELL
/bin/bash
$ sudo docker run -ti ubuntu /bin/bash
root@6b2570958216:/# echo $SHELL
/bin/bash
Bueno, para mí decidí tirar esta /bin/bash
parte como basura.
Pero de todos modos, decidí preguntarte: ¿tal vez hay alguna diferencia entre las dos formas de ejecutar Docker? Si hay, ¿cómo es?