Ejecutar y explorar Contenedores con Docker Linux (es-MX)
Artículo Original: https://social.technet.microsoft.com/wiki/contents/articles/51038.running-and-exploring-a-docker-linux-container/
Introducción
A veces, la mejor manera de solucionar problemas y comprender cómo funciona un contenedor Docker es explorando el contenedor. Si bien hay un par de maneras de explorar, una de las formas realmente útiles es la aplicación docker exec. Básicamente, docker exec nos permite ejecutar comandos dentro de un contenedor, y para un contenedor de Linux, podemos usar docker exec para acceder y ejecutar comandos de shell.
Pero para acceder al bash, por supuesto, necesita tener el contenedor en un estado de ejecución. Este artículo wiki ha explicado cómo puede configurar su propio contenedor, específicamente un contenedor de Linux con ASP.NET Core MVC Application ejecutándose en su interior.
Así que vamos a comenzar.
Paso 1
Actualmente, no tenemos contenedores ejecutándose.
https://lh3.googleusercontent.com/-VsSDUfQJ4dQ/WR5oR59ZXcI/AAAAAAAAEck/6LWd7DgAA68ySV7xszaaqOLHiauzyyo5ACHM/image_thumb?imgmax=800 |
docker ps -a |
Y tenemos el siguiente conjunto de imágenes.
https://lh3.googleusercontent.com/-Gs_B1GvKQdo/WR5oSyv33OI/AAAAAAAAEcs/N234wFZcH380GAYHnkDbUw017Iz83RHVQCHM/image4_thumb%255B1%255D?imgmax=800 |
docker images |
Paso 2. Ejecutar Docker Run
Aquí, el dockerwebapp es la imagen desde la cual planeamos crear y ejecutar un contenedor. Podemos ejecutar el contenedor mediante la ejecución de docker run.
# Runs in the foreground
# Even if pressed Ctrl+C, Container is still running
PS C:\WINDOWS\system32> docker run dockerwebapp
# Runs in the background/detached
PS C:\WINDOWS\system32> docker run -d dockerwebapp
# Runs in the foreground
# If pressed Ctrl+C, Container will stop running
# Container will be displayed in docker ps -a
PS C:\WINDOWS\system32> docker run -it dockerwebapp
# Runs in the foreground
# If pressed Ctrl+C, Container will stop running and will get deleted
PS C:\WINDOWS\system32> docker run -it –-rm dockerwebapp
En este caso, vamos a ejecutar docker run –d dockerwebapp ya que queremos que el Contenedr se ejecute en segundo plano, por lo que para los próximos comandos de la ventana acoplable, no queremos abrir otra ventana de PowerShell.
https://lh3.googleusercontent.com/-K_Nmk3MMfvU/WR5oUOqnOmI/AAAAAAAAEc0/rZT7v09n23Aa9GRsSJ08ca51dwMrBn_gQCHM/image_thumb%255B9%255D?imgmax=800 |
docker run -d dockerwebapp |
Paso 3. Explorar la imagen
Ahora podemos ver que el contenedor se está ejecutando, es hora de explorar la imagen.
PS C:\WINDOWS\system32> docker exec -i -t blissful_roentgen /bin/bash
# -i -t can be use together like follows
PS C:\WINDOWS\system32> docker exec -it blissful_roentgen /bin/bash
https://lh3.googleusercontent.com/-srv8gLWkNbQ/WR5oVJMNAbI/AAAAAAAAEc8/lfw5jTJZy_MeZLl2WBSOWLem4O2nlOnCACHM/image_thumb%255B8%255D?imgmax=800 |
docker exec |
Puede ver que ahora estamos en un shell de Linux y podemos usar comandos de shell para explorar la imagen. Por ejemplo para ver el sistema de archivos..
https://lh3.googleusercontent.com/-N0ePiomTIA8/WR5r3leT8_I/AAAAAAAAEdM/oiG8nSb61uUhoDtSPDWHK_sawy3fsqFeACHM/image_thumb%255B3%255D?imgmax=800 |
ls |
Espero que esto ayude.
Happy Coding
Otros Lenguajes:
English - https://social.technet.microsoft.com/wiki/contents/articles/51038.running-and-exploring-a-docker-linux-container.aspx