GitLab esencial

Integración básica de un proyecto Docker en GitLab

¡Prueba gratis durante 10 días

nuestros 1268 cursos !

Prueba gratis Mostrar modalidades de suscripción
En este capítulo crearemos un proyecto Docker y, a través de GitLab CI, probaremos y compilaremos unos contenedores, que luego subiremos al registro propio de GitLab. Esto nos permitirá mantener casi todo el flujo de nuestras máquinas Docker dentro de GitLab.

Transcripción

Desde la versión 8.8 de GitLab, este dispone de la funcionalidad... ...de registro de contenedores Docker. De esta manera podemos utilizar nuestro propio servidor... ...en vez de tener que depender de Dock Hub u otros registros Docker. También integramos todo el flujo de trabajo de la integración continua... ...y, por qué no, también podemos ahorrar algo de dinero... ...en el uso de los servidores. Es muy sencillo activarlo, yo a tu momento lo que he hecho ha sido ir... ...a un proyecto Docker cualquiera, en este caso he cogido la máquina PHP... ...basada en Alpine. He tomado su Dockerfile, que es relativamente sencillo. Parte de una máquina Alpine de última versión. Configura los límites del PHP. Descarga y compila, no tiene mucho más. Lo que he hecho ha sido copiar este fichero entero... ...y traerlo a nuestro repositorio. Que como veis ahora mismo, solo consta del Dockerfile y del Read me. El Dockerfile, como veis, es el mismo que tenemos en el otro lado. Muy sencillito. Segundo, tenéis que verificar que esté activado el registro... ...en las propiedades del proyecto. Si nos vamos a "Editar el proyecto"... ...hay que asegurarse que la opción del "Container Registry" está activada. Nosotros la tenemos activada y tenemos el botón ya disponible. Es posible que la primera vez que lo activéis, todavía no salga el botón... ...asta que no subáis ninguna imagen Docker a vuestro repositorio. Y lo siguiente sería configurar la integración continua. Un fichero de integración continua para Docker sería bastante sencillo. Podemos, sin meternos en muchas florituras, utilizar este ejemplo... ...que está tomado precisamente de la nota de prensa de la activación... ...del registro de Docker en GitLab. Como veis es muy sencillito. Lo primero que utilizamos es una imagen especial de Docker, que es "docker:git"... ...que tiene el Git incluido, y agregamos este servicio... ...que es Docker in docker (Docker:dind).. ...son una serie de ayudas para poder ejecutar máquinas Docker desde Docker... ...que es una especie de muñeca rusa que utilizaremos para compilar esto. La primera línea lo que hace es conectarse a nuestro repositorio Docker. Fijaros que estoy utilizando la URL que yo configuré en su momento... ...para mi repositorio Docker. Con una variable que utiliza GitLab, que es un Token... ...o es una especie de contraseña temporal para autenticarse... ...dentro de este repositorio y poder subir ficheros. Lo segundo es una compilación normal y corriente de nuestra máquina. Es como cualquier compilación que haréis en un repositorio Docker normal... ...en vuestra máquina. Y lo tercero sería hacer un Push, enviarlo a nuestro repositorio... ...que tenemos en GitLab. Que esto se puede hacer gracias a que nos hemos autenticado en esta primera línea. Como veis, lo mandamos con el nombre "alpine-php"... ...en el entorno "andor". Fijaros que yo tengo el grupo "andor", nombre de proyecto "alpine-php". Esto tiene que coincidir tanto aquí como aquí. Sino no podremos subir el registro. Tiene que estar subido en nuestro repositorio. Y, por último, ponemos la limitación para que solo se compile... ...esta integración continua cuando se producen cambios en "master". Si aceptamos estos cambios, automáticamente se debería disparar nuestro "Pipeline"... ...con esta compilación. Nos conectamos a este test. Venimos a ver en qué estado se encuentra, activamos el autoscroll... ...para ver los cambios. Vemos que ya está configurando los valores de entorno de PHP. Está instalando todos los requerimientos. Ya está compilado y está empujando a nuestro repositorio. Apenas 30 segundos más tarde, tenemos generada nuestra máquina... ...y subida a nuestro registro. Esto lo podremos verificar yendo a "Registry". Y vemos que tenemos con el tag "Latest", que es el que le hemos mandado. Con nuestra ID de imagen con un tamaño de 15 megas y 2 capas. En menos de un minuto, tenemos nuestra imagen Docker. Una vez generada nuestra imagen, es muy fácil usarla. Lo primero que tenemos que hacer para utilizar nuestro repositorio... ...en vez de utilizar Dock Hub, es hacer login en nuestro servidor. En una máquina que tengamos configurado Docker podemos ejecutar este comando... ...para loguearnos. Copiamos. Nos vamos al terminal. Ejecutamos. Tenemos que poner nuestro nombre de usuario de GitLab. Nuestra contraseña. Y ya estamos con login correcto en nuestro repositorio de GitLab. Ahora podemos volver a nuestras imágenes. Y si pinchamos en el "Copiar al portapapeles" que hay... ... al lado de la imagen que queremos descargarnos... ...nos copiará el comando completo que vamos a necesitar... ...para descargar esa imagen. Si yo ahora pego, veis que simplemente un Docker... ..."pull docker.pierdelacabeza.com", que es el nombre de mi repositorio... "/andor" que es el grupo donde está ese proyecto... "/alpine-php", que es el proyecto que tiene este Docker... ...":" la versión, que sería "latest". Ejecutamos. Se descarga la imagen. Y ya la tenemos lista para usar. Como veis, es súper sencillo poner en marcha un proyecto Docker... ...en vuestro repositorio y que sea compilado automáticamente... ...cada vez que hacéis algún cambio.

GitLab esencial

Aprende a instalar y administrar GitLab, bien en tu propio servidor o en un servicio web gratuito o de pago, y cómo crear un perfil y generar tu primer proyecto en GitLab.

3:14 horas (47 Videos)
Actualmente no hay comentarios.
 
Fecha de publicación:27/10/2016

Este curso video2brain está disponible como descarga y para ser visualizado online. ¡Pero no hace falta que decidas entre las dos opciones! Al comprar el curso, disfrutarás de ambas posibilidades.

La descarga te permite ver las lecciones sin estar conectado/a a internet y supone una navegación fácil y ágil entre capítulo y capítulo. Si vas a trabajar en diferentes ordenadores o si no quieres descargarte el curso completo, entra en la web con tus datos de acceso y disfruta directamente de tus vídeos online. Te deseamos que disfrutes de este curso y te resulte de mucha utilidad.

Estamos a tu disposición si tienes cualquier tipo de duda o pregunta.