PÁGINAS

domingo, 28 de febrero de 2021

Instalar GitLab con docker

GitLab además de su versión en la nube puede ser instalado en un servidor o máquina virtual. Pero otra opción muy interesante es la de desplegarlo en un contenedor.

El docker que vamos a utilizar es el oficial de GitLab y en concreto la versión CE (Community Edition):

    https://hub.docker.com/r/gitlab/gitlab-ce/

La documentación oficial la podemos encontrar en:

   https://docs.gitlab.com/omnibus/docker/

Verás que trata sobre la versión Enterprise, pero como indican mas abajo, solo tienes que sustituir gitlab-ee por  gitlab-ce en todos los comando propuestos.

Para correr el docker de GitLab, tendremos que especificar los siguientes parámetros:

   -d --> Para ponerlo en segundo plano (dettach)

   -p 443:443 --> Puerto 443 en el docker y el correspondiente en nuestro equipo

   -p 80:80

   -p 22:22

   --name gitlab --> Nombre del docker

   --restart always --> reiniciará ante errores

   -v /srv/gitlab/config:/etc/gitlab 

   -v /srv/gitlab/logs:/var/log/gitlab

   -v /srv/gitlab/data:/var/opt/gitlab

Para desplegar este docker solo debemos lanzar este comando:

   # docker run -d -p 443:443 -p 80:80 -p 22:22 --name gitlab --restart always -v /srv/gitlab/config:/etc/gitlab -v /srv/gitlab/logs:/var/log/gitlab -v /srv/gitlab/data:/var/opt/gitlab gitlab/gitlab-ce

Es posible que cuando vayamos a acceder a http://localhost obtengamos una respuesta similar a: 502 - Whoops, GitLab is taking too much time to respond. Debemos dejar pasar un rato, hasta que GitLab arranque completamente.

Vamos a ver como cambiar la contraseña de root, son pocos pasos y nos permite repetir la operación siempre que queramos. Lo primero nos conectamos al docker de forma interactiva:

   # docker exec -it gitlab bash

Una vez dentro del contenedor, ejecutamos:

   # gitlab-rails console -e production

Tendremos que esperar a que vuelva a aparecer el prompt y ejecutamos:

   > user = User.where(id: 1).first

   > user.password = 'ContraseñaNueva'

   > user.password_confirmation = 'ContraseñaNueva'

   > user.save

   > exit

Salimos de la consola del docker:

   # exit

Y ya podemos entrar a http://localhost de nuevo e iniciar sesión con el usuario root y la nueva contraseña que hemos especificado anteriormente. A partir de ahí pura esencia GitLab!!!

DOCKER-COMPOSE

El fichero docker-compose.yml deberá contener:

   version: '3.3' 

      services: 

         gitlab-ce: 

            ports: 

               - '443:443' 

               - '80:80' 

               - '22:22' 

            container_name: gitlab 

            restart: always 

            volumes: 

               - '/srv/gitlab/config:/etc/gitlab' 

               - '/srv/gitlab/logs:/var/log/gitlab' 

               - '/srv/gitlab/data:/var/opt/gitlab' 

            image: gitlab/gitlab-ce

SaluDOS

No hay comentarios:

Publicar un comentario