Instalando Git en Linux + GitLab

Escrito el 24 mayo 2012 por Luis Ignacio Díaz Martínez


Aprovechando que por fín he conseguido a concienciarme e instalar Ubuntu 12.04 en el ordenador del despacho explicaré como instalar Git + GitLab en el. Sencillamente, dentro de poquito empezaré con tareas de desarrollo ( nueva página web, módulos, aplicativos… ) por lo tanto, es fundamental tener instalado un software decente dedicado al control de versiones.

Así que a continuación podréis ver una guía básica y por encima de su instalación.

Entorno

    1. Sistema operativo: Ubuntu 11.10 ( también realizado con Debian 6.0 )
    2. Memoria RAM: 2Gb ( proximamente ampliare a 4Gb )
    3. Tipo de máquina: Genérica

Desarrollo

Ahora empezaremos con lo bueno. Primero de todo explicar que estructuraré este mini-manual por pasos. Por si alguien se pierde ( chiste fácil ). Así que simplemente ir siguiendo las indicaciones que seguro que el camino de las baldosas amarillas será el sencillo de superar.

Instalación base del software

**Nota para instalación en Debian 6.0, para realizar estos pasos necesitaremos tener instalado “sudo” para ello lo instalaremos de la siguiente forma:

Vale, comenzamos la guinda del pastel. Tenemos que tener en cuenta que git ya se encuentra en repositorios así que aprovechando esto empezaremos instalando los paquetes que necesitamos.

Ahora tendremos que instalar MySQL que es uno de los requisitos básicos:

**Tendremos que apuntarnos bien la contraseña!

Ahora, por lo que veo y leo en este momento, GitLab necesita el comando sendmail para funcionar. Por ejemplo lo utilizará para enviar un email cuando hemos perdido la contraseña. Este comando lo podemos encontrar dentro de los paquetes exim4, postfix y sendmail. Pero por supuesto tan solo tenemos que tener uno de ellos instalado.

Yo instalare postfix. Así que primero comprobaré que no lo tenga ya instalado:

Vaya se me acaba de chivar que no tengo sendmail, que no encuentra el comando. Eso quiere decir que no lo tengo disponible y que por lo tanto procederé a instalar postfix.

Aquí postfix nos pregunta una serie de cosas, ¿que tendremos que contestar?
    1. Tipo de configuración: Sólo correo local
    2. Nombre del sistema de correo: DEPINF01

**Nota: Donde pone “nombre del sistema de correo” pondremos lo que nosotros queramos. Damos este paso por finalizado.

Instalando Ruby 1.9

Gitlab necesita que tengamos instalado Ruby en su versión 1.9.3. En los repositorios de Debian no se encuentra la última versión de Ruby, pero en Ubuntu si, ahora procederemos a instalarlo de la siguiente forma:

Actualización: Ahora viene si queremos instalarlo en Debian 6.0:

A mi, me ha instalado la versión 1.1.3 de bundler.

Instalando gitolite

Gitolite es una herramienta utilizada por GitLab. Esta herramienta maneja el acceso y el control sobre el repositorio git. Para utilizar esa herramienta tendremos que generar y registrar una serie de claves publicas ( keys public ). Una vez más podemos encontrar este paquete en repositorios.

**Nota: Paso actualizado 19NOV2012

Vamos a crear los usuarios que necesitamos para todo este tinglao… primero crearemos el usuario para git y luego el de gitlab… con los correspondientes grupos… así que vamos a fijarnos:

Creando usuario git:

Creando usuario GitLab:
Ahora añadimos git al grupo gitlab:

Y ahora a la inversa…

Ahora comprobamos que este creado:

Ahora nos tendrá que aparecer algo parecido a esto:

Si es así, es que el usuario se ha creado correctamente.

Ahora, tenemos que generar las llaves de acceso SSH, para ello introduciremos lo siguiente:

Tan solo pulsaremos la tecla “Enter” siempre que se nos pregunte algo.

Vale, ahora tendremos que buscar y copiar la clave que hemos generado, para ello introduciremos lo siguiente:

Ahora descargamos el código de GitoLite:

Ahora vamos a proceder con la instalación

Permisos…

Ahora procederemos a la comprobación de acceso a git…

Si no da errores podemos continuar!… y si da errores… comentarlo o repetir los pasos! 😉

Instalar GitLab

Instalando dependencias:

Vamos a instalar las dependencias…

Descargando GitLab:

Ahora si que nos tendremos que descargar el código fuente del programa ( versión “stable” ). Así que teclearemos lo siguiente en nuestra consola:

Configurándolo:

Ahora tendríamos que empezar a configurarlo, para ello primero configuraremos el acceso a la base de datos.

Con el comando anterior se nos abrirá la aplicación “nano” para que podamos editar los campos correspondientes con la conexión a la base de datos como… el usuario y la contraseña… es bastante intuitivo así que no realizaré ninguna aclaración..
Ahora, vamos con la configuración general de GitLab.

Aquí vamos a modificar lo siguiente:

  • Email: En el campo “from” introduciremos la persona que envía el correo. Y en host el servidor.
  • git_host: Editaremos “base_path” y “git_user
Este sería el resultado:

Ahora modificamos los permisos para mejorar algo la seguridad:

Instalando gemas y base de datos:

Vale ahora empezamos con la chicha, ya que vamos a empezar a instalar la base de datos y los módulos necesarios para el programa. Así que iremos paso por paso, primero ejecutaremos esto:

**Nota: Apartado oculto por la última actualización ( 19NOV2012 ):

Mostrar »

Vale, al ejecutar este último comando me ha aparecido un error, le falta un complemento. En especial el de la base de datos. Así que tendremos que instalarlo.

Solución: Complemento MySQL ( SOLO si realmente falla )

Nota de actualización: El paquete denominado “ruby-mysql” en Debian lo encontraremos como libmysql-ruby.

{ Faltaba una librería, exactamente no se cual, así que he instalado varias como se puede apreciar arriba }

Ahora me sale otro error con otra gema linguist ( Importante leer la nota ). Estoy buscando ahora una solución para ello.

{ Nota importante sobre el error! Este error tan solo me ha salido una de las dos veces que lo he instalado, quiero decir con ello, que la última vez que seguí este manual no me apareció el error }

Solución: Gema linguist

**Antes de seguir tenemos que asignarle una contraseña a nuestro MySQL si no lo teníamos antes. ( Tendremos que introducir la misma contraseña que hemos introducido más arriba con la configuración de gitolite ). Esto lo podemos realizar solo si no recordamos la contraseña o teníamos otra asignada… o simplemente el configurador de MySQL no se lanzó correctamente. Si ya has introducido una contraseña anteriormente en MySQL NO REALICES ESTOS PASOS, si no introduciremos esta serie de comandos:
Ahora procederemos a ejecutar los dos últimos comandos que nos queda para la instalación:

Si todo va bien veremos como poco a poco va creando las tablas en la base de datos. Al finalizar con el último comando nos aparecerá “Administrator account created” tendremos que apuntar bien los datos ya que como podemos ver nos refleja el usuario y contraseña!

 

Instalando base de datos

Ahora vamos a realizar la instalación de la base de datos:

Y… ahora los “hooks”:

Chequeando el estado

Para comprobar que todo está en orden ejecutaremos lo siguiente:

Nos tendría que mostrar lo siguiente:

Si vemos que todo está en “YES” es que es bueno.

Iniciando GitLab

Ahora vamos a comprobar que todo funcione correctamente… para ello tenemos que ejecutar gitlab…

Vale, ya lo tenemos ejecutado que nos dice al ejecutar el comando?

Simplemente nos indicará donde nos tenemos que conectar… en mi caso… la dirección local con el puerto 3000

Nota importante: Si accedemos desde fuera tenemos que tener el puerto abierto!

Integrando GitLab con Apache2

Esto lo podéis ver en el artículo… GitLab en Apache

Referencia:


Cargando...

Comentarios:


6 Comentarios

#480 cristian maldonado

Tengo un problema, el paquete:

libcurl4-openssl-dev
me aparece como que no se ha podido localizar, conoces la actualización de este paquete?

#481 luigdima

Vaya.. Primero de todo perdona por tener el blog de patas arriba que estoy en remoderación del theme! Dime que distribución ( y versión ) utilizas y que repositorios tienes y miro de echarte un cable! Un saludo!

#3797 juan moya

hola

tengo unos problemas

1. instalar gitolite no puedo

2- en la parte de configutandolo

3. con el gitlab que instalas creo que ya no esta disponible

    #3799 Luis Ignacio Díaz Martínez

    La verdad es que ahora todo es más sencillo! próximamente realizaré un nuevo manual para substituir este que ya está obsoleto… gracias!

Deja un comentario

Nombre *
Email *
Web