Skip to content

Cómo configurar GitLab como tu propio clone GitHub privado

Git y Github son dos estupendas herramientas que permiten una gestión y administración sencilla de una gran cantidad de repositorios. Esto está bien si usted está desarrollando un software de código abierto, pero puede que no le interese esta opción si lo que está desarrollando es código privado. En este caso ¿cómo se puede obtener el control, flexibilidad y facilidad de uso parecido a lo que nos ofrece Github sin la necesidad de que sus repositorios git estén en servidores fuera de su control?

Para lograr esto, podemos hacer uso de GitLab, que proporciona una simple pero potente interfaz web de forma similar a como funciona GitHub, con la diferencia que podemos alojarlo en nuestro propio servidor cloud, controlar el acceso como queramos y donde el tamaño estaría limitado al espacio de almacenamiento que tenga nuestro servidor.

Para ver cómo conseguir esto que hemos hablado, supondremos que contamos con un VPS que corre bajo Ubuntu donde instalaremos todo el software necesario para conseguir nuestro objetivo.

El primer paso es instalar algunos paquetes que utilizaremos.

Asegúrate que no tienes instalada la versión 1.8 de Ruby, ya que da problemas. Si lo tuvierais, lo desinstaláis e instaláis la versión 2.0.

Cuando hayas finalizado, revisa que tienes instalada la versión correcta de Ruby.

En la salida debería aparecer algo similar a esto que os dejamos.

Ahora necesitamos instalar el Bundler gem.

Y crearnos un usuario git para utilizarlo con GitLab.

Instalando el Shell de GitLab

Descargamos el shell GitLab con las siguientes instrucciones.

Mediante las instrucciones anteriores tenemos una copia de GitLab 1.7.0, y el ejemplo config.yml está listo.

Si tienes un nombre de dominio apuntado al VPS, debemos editar el archivo config.yml para usar el dominio.

Al principio del archivo, tendremos una línea con algo similar a lo siguiente.

Cambiamos el “localhost” por el nombre de nuestro dominio.

Ahora ya podemos arrancar el Shell que hemos instalado.

Configuración de la base de datos

GitLab utiliza el sistema de bases de datos MySQL. El primer paso será instalar MySQL con la instrucción que os dejamos a continuación. Durante el proceso de instalación se le pedirá que indique una contraseña para el usuario “root”. Podemos poner la que queramos pero teniéndola presente ya que será requerida en los siguientes pasos.

Ya tenemos instalado MySQL y asignada la contraseña “root”. Lo siguiente que debemos hacer es crear un usuario MySQL para utilizar con GitLab. Para hacer esto, primero guardamos las consultas SQL en un fichero temporal.

Pega el siguiente código, cambiando el valor “$password” por nuestra contraseña que hemos asignado. Es necesario que tengas en cuenta esta clave ya que será la contraseña de la base de datos de tu GitLab.

Ahora salvamos el archivo y ejecutamos la siguiente instrucción para ejecutar las consultas MySQL. Lo primero que nos solicitará será la contraseña de nuestro usuario root.

Lo siguiente que vamos hacer es asegurarnos de que nuestro usuario MySQL fue creado satisfactoriamente. Nos logueamos en nuestra base de datos MySQL utilizando el usuario “gitlab”.

Si vemos lo siguiente.

Será señal de que todo ha ido correcto. Salimos de la base de datos.

Borramos el fichero temporal donde habíamos almacenado las instrucciones sql que hemos ejecutado.

En este punto, ya tenemos todo configurado para intalar GitLab satisfactoriamente. Procedamos con la instalación.

De la misma forma que hicimos al configurar el Shell de GitLab, si tenemos un dominio configurado en nuestro VPS necesitaremos editar el config.yml para utilizar ese dominio.

Al principio del archivo, deberíamos encontrarnos con un bloque de texto parecido al siguiente.

Cambiamos el host por el nombre de nuestro dominio.

También daremos permisos a algunos archivos Linux.

Ahora tenemos que decirle a GitLab que debe utilizar el usuario “gitlab” que hemos creado anteriormente. Para esto, editamos el archivo “config/database.yml”.

Buscamos un bloque llamado “production” que contendrá las variables para indicar el nombre del usuario y de la contraseña. Es en esos campos donde tendremos que poner los datos de nuestro usuario.

Salvamos los cambios y cambiamos los permisos del archivo para asegurarnos que ningún otro usuario del servidor puede ver estos datos.

Ahora instalaremos unos pocos elementos más que necesitaremos para que funcione de forma correcto nuestro GitLab privado. Este proceso puede tardar varios minutos.

Diremos que “yes” cuando nos pregunten si queremos continuar.

Después de todo esto, se mostrará por pantalla un montón de información y al final se mostrará el mensaje “Administrator account created”, dándonos las credenciales como administrador. Debería aparecer algo similar a lo siguiente.

El siguiente paso será configurar GitLab para ponerlo en marcha siempre que arranque el servidor.

Ejecutamos la siguiente instrucción para asegurarnos de que está trabajando.

Si no da mensajes de error y los datos mostrados por ese comando parecen correctos, damos por finalizada la instalación y configuración. Ahora arrancamos GitLab mediante el siguiente comando.

Configurando Nginx

GitLab funciona con el servidor web Nginx por defecto. Si tenemos nuestro propio servidor web configurado como puede ser Apache, entonces estos pasos no deberías de aplicarlos. De lo contrario, siga estas instrucciones para instalar y configurar Nginx para trabajar con GitLab.

Editar “/etc/nginx/sites-available/gitlab” para utilizar nuestro nombre de dominio.

Ahí buscaremos el bloque “server” y sustituiremos la cadena “YOUR_SERVER-FQDN” con el nombre de nuestro dominio.

Por último reiniciamos Nginx.

Para empezar a utilizar nuestro GitLab, debemos utilizar nuestro navegador y loguearnos con las claves que hemos indicado en un paso anterior (usuario: admin@local.hots; pass: 5iveL!fe)

Published inComunicados

Be First to Comment

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos necesarios están marcados *