¿Qué son los contenedores?
En la página oficial de Docker, podemos leer: “Los contenedores son una abstracción en la capa de la aplicación que empaqueta el código y las dependencias juntas” (www.docker.com/resources/what-container), pero esa es una definición muy sofisticada. En palabras más comprensibles, un contenedor es una pieza de software que tiene todo el código de paquete mínimo y las dependencias necesarias para ejecutar una aplicación. Esta pieza de software podría ejecutarse sobre el software, en este caso, el motor Docker.
¿Qué es Docker?
En 2013 se lanzó Docker como un software para aplicaciones en contenedores. El motor Docker nos permite ejecutar diferentes aplicaciones al mismo tiempo sin ninguna interferencia entre ellas. Cada aplicación está aislada de las demás, permitiendo la creación de entornos separados para cada una. Por ejemplo, podemos tener varios contenedores que ejecutan diferentes versiones de Ngixn o tal vez del sistema operativo. En la siguiente imagen podemos apreciar gráficamente este concepto.
Comandos básicos de Docker
En esta sección, vamos a discutir los comandos de Docker más comunes que se usan en las tareas de administración del día a día:
docker run.
Este comando nos permite crear y ejecutar un nuevo contenedor a partir de una imagen.
Caso de uso:
docker run nginx.
Este comando nos permite crear y ejecutar un nuevo contenedor en base a la imagen de nginx.
Nota: Si la imagen no está accesible localmente, la descargaremos desde el docker hub.
docker run -d nginx.
Este comando le permite crear y ejecutar un nuevo contenedor en base a la imagen nginx, y ese contenedor se ejecutará en segundo plano (después de la ejecución del comando, el indicador del Shell volverá).
docker run -d centos sleep 20.
Este comando le permite crear y ejecutar un nuevo contenedor en base a la imagen de centos, y ese contenedor se ejecutará en segundo plano (después de la creación del contenedor, se ejecutará el comando “sleep 20”).
docker run -it nginx Bash.
Este comando le permite crear y ejecutar un nuevo contenedor en el modo interactivo. La opción -it especifica el modo interactivo (-i), y el tty (-t) con esta combinación se puede adjuntar al indicador de Bash (especificado en la última parte del comando).
docker ps
Este comando nos permite listar todos los contenedores creados.
Sin ningún parámetro (-a), solo enumerando los contenedores con el estado de ejecución.
docker ps -a
Este comando nos permite listar todos los contenedores creados. No importa el estado.
docker images
Este comando nos permite listar todas las imágenes disponibles en el repositorio local.
docker start
Este comando nos permite iniciar uno o más contenedores detenidos.
Nota: necesitamos agregar el nombre o la identificación del contenedor al final del comando («docker start my_container»)
docker stop
Este comando nos permite detener uno o más contenedores en ejecución.
Nota: necesitamos agregar el nombre o la identificación del contenedor al final del comando («docker stop my_container»)
docker rm
Este comando nos permite eliminar uno o más contenedores en ejecución/detenidos.
Nota: necesitamos agregar el nombre o la identificación del contenedor al final del comando («docker rm my_container»)
docker rmi
Este comando nos permite eliminar una o más imágenes del repositorio local.
Nota: necesitamos agregar el nombre o la identificación del contenedor al final del comando («docker rmi my_image»)
Para más información sobre este u otros comandos Docker visita la documentación oficial.