Archivo de configuración Docker: Uso y configuración

Archivo de configuración Docker: Uso y configuración

¿Qué es el archivo Dockerfile?

Para empezar a trabajar la configuración de nuestra instancia de Docker, vamos a crear un nuevo directorio llamado ejemplo1.

mkdir ejemplo1
cd ejemplo01

Ahora creamos nuestro archivo Dockerfile en el cual vamos a especificar la información acerca de nuestra instancia. La idea es que creemos nuestra propia imagen utilizando el template de Ubuntu 16.04.

FROM ubuntu:16.04
MAINTAINER [email protected]
RUN apt-get update
RUN apt-get install -y python3

En el ejemplo hemos especificado 3 instrucciones.

  • Utilizar la imagen de Ubuntu para la version 16.04.
  • Definir al maintainer (quien mantiene la imagen).
  • Una ves instalado Ubuntu realizar las actualizaciones de los paquetes.
  • Realizar la instalación de python3 y responder “si” por default a todas las preguntas de forma que no se detenga la instalación.

Si vemos todas las instrucciones como FROM, MAINTAINER y FROM se han escrito con mayúsculas, esto no es un requerimiento como tal sino mas bien una convención al escribir nuestro archivo Dockerfile.

Ahora vamos a construir nuestro contenedor utilizado nuestro Dockerfile, para ello basta ejecutar el comando build de Docker dentro del mismo directorio en donde se encuentra el Dockerfile.

$ docker build .

Lo primero que vamos a ver es a Docker realizando la descarga de la imagen utilizada como template ubuntu:16.04, este proceso puede tomar algunos minutos pero solo la primera vez, ya que posteriormente cuando construyamos una instancia de Docker utilizando esta imagen, esta ya estará disponible dentro de nuestro sistema.

Durante el provisionamiento, Docker nos irá mostrando información acerca del progreso de las instrucciones del Dockerfile:

...
Step 1/4 : FROM ubuntu:16.04
...
Step 2/4 : MAINTAINER [email protected]
...
Step 3/4 : RUN apt-get update
...
Step 4/4 : RUN apt-get install -y python3
...
Successfully built e1bd48f8da85

Para ver las imágenes que han sido descargadas podemos hacer uso del comando…

$ docker images

La salida luciría similar a la siguiente…

REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
<none>              <none>              e1bd48f8da85        11 minutes ago      186MB
ubuntu              16.04               c6a43cd4801e        5 days ago          123MB
hello-world         latest              fce289e99eb9        11 months ago       1.84kB

La imagen que acabamos de crear es la que aparece como .