Creacion de un Dockerfile: La instruccion FROM

La instrucción FROM de docker para Dockerfile sirve para definir la imagen base que utilizaremos en las construcción de una imagen.
Esta instrucción debería ser la primera no comentada de un Dockerfile.

Generalmente consiste en la imagen dockerizada de un sistema operativo y se obtiene de repositorios públicos.

Docker incluye dentro de sus "best practices" el uso de los repositorios oficiales de imágenes. Incluso se nos recomienda el uso de la imagen de Debian, por su estabilidad y reducido tamaño.

La sintaxis mas habitual para llamar a la instrucción es

FROM <image>:<tag>

Donde <image> es el nombre de la imagen base y <tag> la etiqueta de la imagen base. Especificar la etiqueta es opcional. Si no se especifica, se asume que el valor será "latest". Para saber las etiquetas disponibles para una imagen se puede mirar directamente en el docker hub.

Ejemplo: Llamar a la imagen de debian con la versión jessie (tag)

FROM debian:jessie

En otras ocasiones no se llama a una imagen que sea un sistema operativo "dockerizado", sino que se llama a otra imagen que finalmente acaba llamando a un sistema operativo

Ejemplo

FROM php:5.6-fpm

En este caso, si vemos el Dockerfile de la imagen php:5.6-fpm, se hace llamada a la imagen debian:jessie.

Nota: La instruccion FROM puede aparecer varias veces en un único Dockerfile si quieres crear varias imagenes.