Crear y usar un repositorio en Docker Hub

Publicado por pico.dev el , actualizado el .
blog-stack gnu-linux planeta-codigo planeta-linux
Comentarios

¿Por qué se habla tanto de Docker y despierta tanto interes si la tecnología ya existía desde hace tiempo tanto en otros sistemas operativos como en Linux? Uno de los éxitos que ha contribuido a ellos es Docker Hub, un repositorio de imágenes en el que cualquiera puede contribuir con las suyas. Esto hace que pueda encontrarse cualquier herramienta de las populares y empezar a usarlas en muy pocos minutos.

Docker

Probablemente uno de los éxitos de Docker más que la propia tecnología de contenedores sea Docker Hub que permite a los usuarios compartir las imágenes construidas, se podría decir que es el GitHub de los contenedores docker y quizá por ello el paralelismo en el nombre entre ambos. Docker Hub permite subir imágenes o usar las imágenes oficiales de postgresql, redis, mysql, ubuntu, rabbitmq, … y otra multitud de proyectos.

El archivo Dockerfile con el que construimos una imagen podemos hospedarlo en un repositorio de GitHub y que Docker Hub lo obtenga para construir la imagen. Docker Hub ofrece repositorios públicos en los que colocar las imágenes que cualquier otro usuario puede acceder y usar o repositorios privados con cierto coste según el número de repositorios privados, el primer repositorio privado es gratuito.

Otros artículos sobre Docker

Este artículo forma parte de otros artículos sobre Docker que ya he escrito si quieres empezar por el principio puedes leer primero la Introducción y características sobre Docker, el Inicio básico de Docker, Como crear una imagen con un Dockerfile o Como usar docker con Docker Compose. En siguientes artículos hablaré de otras herramientas como Docker Machine y Docker Swarm.

A continuación explicaré como crear un repositorio en Docker Hub que obtenga los Dockerfile de un repositorio de GitHub y construya las imágenes de los Dockerfile de forma automática cuando haya cambios en los archivos dockerfile de GitHub.

Crear una cuenta en Docker Hub

Primero necesitaremos crear una cuenta en Docker Hub. El nombre de usuario determinará el nombre de las imágenes, siendo mi nombre de usuario picodotdev al usar las imágenes debería usar:

Docker Hub

Subir el archivo Dockerfile a un repositorio de GitHub

Posteriormente deberemos crear un repositorio en GitHub para alojar los archivos Dockerfile que usará Docker Hub para construir las imágenes de Docker. En el ejemplo usaré el repositorio blog-ejemplos y dentro de este los dockerfiles los he ubicado dentro de una carpeta.

Una vez que tenemos el repositorio de GitHub subimos un Dockerfile para el ejemplo, usaré el proporcionado de forma oficial de posgresql, y creamos en Docker Hub una build automatizada, se nos solicitará permisos en la cuenta de GitHub para que Docker Hub pueda acceder a nuestros repositorios.

Crear el repositorio en DockerHub y la build automática

En la creación del repositorio en Docker Hub con build automatizada seleccionamos el repositorio de GitHub que contiene los repositorios y el archivo DockerFile para el que queremos hacer la build automatizada. Le asignamos un nombre al repositorio y un tag a la build que podremos usar al hacer el pull de la imagen.

Build automatizada de Docker Hub

Docker Hub se encargará de obtener el archivo Dockerfile y construir la imagen, en el proceso podremos ver las trazas generadas.