Instalar y configurar GitLab en Debian 11 Bullseye

GitLab es un repositorio de código web gratuito y de código abierto para el desarrollo de software colaborativo para DevOps, escrito en los lenguajes de programación Ruby y Go. El lema principal de GitLab es "Aporte velocidad con confianza, seguridad sin sacrificios y visibilidad del éxito de DevOps". Es una alternativa bastante popular a GitHub que proporciona funciones de wiki, seguimiento de problemas e integración continua y canalización de implementación, utilizando una licencia de código abierto, desarrollada por GitLab Inc.

En el siguiente tutorial, aprenderá cómo instalar y configurar GitLab en su escritorio o servidor Debian 11 Bullseye, junto con cómo comenzar iniciando sesión con root para que pueda comenzar a configurar GitLab a su gusto o para los requisitos de su equipo.

Requisitos previos

  • SO recomendado: Debian 11 Diana.
  • Cuenta de usuario: Una cuenta de usuario con acceso sudo o root.

Actualizar sistema operativo

Actualice su Debian sistema operativo para asegurarse de que todos los paquetes existentes estén actualizados:

sudo apt update && sudo apt upgrade -y

El tutorial utilizará el comando sudo y asumiendo que tienes el estado de sudo.

Anuncio

Para verificar el estado de sudo en su cuenta:

Anuncio
sudo whoami

Salida de ejemplo que muestra el estado de sudo:

[joshua@debian~]$ sudo whoami
root

Para configurar una cuenta sudo nueva o existente, visite nuestro tutorial en Agregar un usuario a Sudoers en Debian.

Para utilizar el cuenta root, use el siguiente comando con la contraseña de root para iniciar sesión.

su

El tutorial utilizará el terminal para la instalación que se encuentra en Actividades> Mostrar aplicaciones> Terminal.

Anuncio

Ejemplo:

Instalar dependencias para GitLab

Antes de instalar GitLab en su sistema operativo Debian 11 Bullseye, deberá instalar las dependencias para que pueda instalar y operar GitLab.

Anuncio

Abra su terminal y ejecute el siguiente comando:

sudo apt install curl ca-certificates apt-transport-https gnupg2 -y

Crear e importar repositorio de GitLab

De forma predeterminada, GitLab no viene empaquetado en los repositorios predeterminados de Debian 11, y esto significa que deberá crear uno manualmente. Sin embargo, GitLab ha creado un script APT útil para que lo descargue y lo ejecute para ayudarlo en esta tarea.

Vea también  Cómo instalar KeePassXC en Debian 11 Bullseye

Descargue el script APT de GitLab usando el comando de rizo:

Anuncio
curl -s https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | bash

Salida de ejemplo del script:

Cómo instalar y configurar GitLab en Debian 11 Bullseye

Ahora ejecute el comando apt update para verificar y sincronizar el nuevo repositorio.

sudo apt update

Tenga en cuenta que esto puede cambiar en el futuro y el tutorial se actualizará cuando esto ocurra.

Anuncio

Instalar Gitlab

La siguiente parte del tutorial es instalar GitLab, y ya debería haber usado el comando apt update para sincronizar el repositorio recién creado y modificado. Ahora ejecute el comando de instalación usando lo siguiente:

sudo apt install gitlab-ce

Salida de ejemplo y dependencias que se instalarán a lo largo de GitLab:

Anuncio
Cómo instalar y configurar GitLab en Debian 11 Bullseye

Tipo Y, luego presione el INTRODUCIR CLAVE para continuar con la instalación.

Tenga en cuenta que el tamaño de la instalación es 2.5GB, por lo que las conexiones a Internet lentas podrían esperar un tiempo para completar la descarga e instalación.

Una vez que se complete la instalación, debería obtener el siguiente resultado en su terminal.

It looks like GitLab has not been configured yet; skipping the upgrade script.

       *.                  *.
      ***                 ***
     *****               *****
    .******             *******
    ********            ********
   ,,,,,,,,,***********,,,,,,,,,
  ,,,,,,,,,,,*********,,,,,,,,,,,
  .,,,,,,,,,,,*******,,,,,,,,,,,,
      ,,,,,,,,,*****,,,,,,,,,.
         ,,,,,,,****,,,,,,
            .,,,***,,,,
                ,*,.
  


     _______ __  __          __
    / ____(_) /_/ /   ____ _/ /_
   / / __/ / __/ /   / __ `/ __ \
  / /_/ / / /_/ /___/ /_/ / /_/ /
  \____/_/\__/_____/\__,_/_.___/
  

Thank you for installing GitLab!
GitLab was unable to detect a valid hostname for your instance.
Please configure a URL for your GitLab instance by setting `external_url`
configuration in /etc/gitlab/gitlab.rb file.
Then, you can start your GitLab instance by running the following command:
  sudo gitlab-ctl reconfigure

For a comprehensive list of configuration options please see the Omnibus GitLab 
readme
https://gitlab.com/gitlab-org/omnibus-gitlab/blob/master/README.md

Help us improve the installation experience, let us know how we did with a 1 min
ute survey:
https://gitlab.fra1.qualtrics.com/jfe/form/SV_6kVqZANThUQ1bZb?installation=omnib
us&release=14-3

Processing triggers for man-db (2.9.4-2) ...
Processing triggers for ufw (0.36-7.1) ...

Cómo configurar GitLab

Con GitLab instalado, ahora puede configurar SSL, el nombre de dominio o las contraseñas del nombre del subdominio y mucho más. El tutorial repasará las opciones de configuración básicas que se deben realizar. Sin embargo, puede realizar configuraciones alternativas a las que se enumeran a continuación.

Anuncio

Primero, abre el "Gitlab.rb" archivo de configuración usando cualquier editor de texto:

Anuncio
sudo nano nano /etc/gitlab/gitlab.rb

La primera configuración será establecer el dominio, navegar hasta la línea 36 y encontrar lo siguiente.

external_url 'https://gitlab.linuxcapable.com'

Cambie esto a su nombre de subdominio.

Vea también  Cómo instalar VSCodium en Debian 11/10

Ejemplo:

Cómo instalar y configurar GitLab en Debian 11 Bullseye

A continuación, configure TLS/SSL con Let's Encrypt, que comienza en 2297.

De forma predeterminada, todas las configuraciones se comentan con "#". Deberá descomentar las siguientes líneas.

Anuncio
Anuncio
 letsencrypt['enable'] = true
 letsencrypt['contact_emails'] = ['youremail@yourdomain.com']
 letsencrypt['auto_renew'] = true
 letsencrypt['auto_renew_hour'] = 4
 letsencrypt['auto_renew_day_of_month'] = "*/4"
 letsencrypt['auto_renew_log_directory'] = '/var/log/gitlab/lets-encrypt'

Ejemplo:

Cómo instalar y configurar GitLab en Debian 11 Bullseye

Una vez hecho, CTRL + O luego sale del archivo con CTRL + X.

Ahora ejecute el comando reconfigure de la siguiente manera.

sudo gitlab-ctl reconfigure

Al final, recibirás el siguiente mensaje en tu terminal.

Notes:
Default admin account has been configured with following details:
Username: root
Password: You didn't opt-in to print initial root password to STDOUT.
Password stored to /etc/gitlab/initial_root_password. This file will be cleaned up in first reconfigure run after 24 hours.

NOTE: Because these credentials might be present in your log files in plain text, it is highly recommended to reset the password following https://docs.gitlab.com/ee/security/reset_user_password.html#reset-your-root-password.

Running handlers complete
Chef Infra Client failed. 218 resources updated in 41 seconds

Notes:
Default admin account has been configured with following details:
Username: root
Password: You didn't opt-in to print initial root password to STDOUT.
Password stored to /etc/gitlab/initial_root_password. This file will be cleaned up in first reconfigure run after 24 hours.

NOTE: Because these credentials might be present in your log files in plain text, it is highly recommended to reset the password following https://docs.gitlab.com/ee/security/reset_user_password.html#reset-your-root-password.

Para ver la raíz (GitLab) contraseña, ejecute el siguiente comando.

Anuncio
cat /etc/gitlab/initial_root_password

Ejemplo de salida:

Anuncio
# WARNING: This value is valid only in the following conditions
#          1. If provided manually (either via `GITLAB_ROOT_PASSWORD` environment variable or via `gitlab_rails['initial_root_password']` setting in `gitlab.rb`, it was provided before database was seeded for the first time (usually, the first reconfigure run).
#          2. Password hasn't been changed manually, either via UI or via command line.
#
#          If the password shown here doesn't work, you must reset the admin password following https://docs.gitlab.com/ee/security/reset_user_password.html#reset-your-root-password.

Password: SGGg/WQ9+N1JdgouIbPftla+Kt8Qcyr+HL5oJfRbBmM=

# NOTE: This file will be automatically deleted in the first reconfigure run after 24 hours.

Como arriba, puede ver que la contraseña es "SGGg / WQ9 + N1JdgouIbPftla + Kt8Qcyr + HL5oJfRbBmM =" y que este archivo se eliminará automáticamente en 24 horas.

Vea también  Cómo instalar MakeMKV en Debian 11/10

Cómo acceder a GitLab

Ahora que el backend está configurado, es hora de iniciar sesión y ver su GitLab.

Primero, abra la ruta del dominio donde se asignó GitLab en el archivo de configuración.

Ejemplo:

Anuncio
https://gitlab.example.com

A continuación, inicie sesión con el nombre de usuario. "raíz" y la contraseña que recibió, que en el caso del tutorial fue "SGGg / WQ9 + N1JdgouIbPftla + Kt8Qcyr + HL5oJfRbBmM =".

Ejemplo:

Anuncio
Cómo instalar y configurar GitLab en Debian 11 Bullseye

Ha iniciado sesión correctamente como cuenta raíz y llegará a la página de destino predeterminada.

Ejemplo:

Cómo instalar y configurar GitLab en Debian 11 Bullseye

Desde aquí, puede proceder a instalar y configurar GitLab para que se adapte a sus necesidades o a su equipo. Una de las primeras cosas que debe hacer es ir a la sección de administración y configurar la seguridad, como 2FA, cambiar las contraseñas de root y mucho más antes de agregar miembros del equipo. Todo esto se puede encontrar haciendo clic en el Menú> Administrador en la parte superior izquierda esquina de la página.

Anuncio

Ejemplo:

Cómo instalar y configurar GitLab en Debian 11 Bullseye

Crear Cronjob para la copia de seguridad automática de GitLab

De forma predeterminada, no se crean ni configuran copias de seguridad. Esto debe establecerse mediante un cronjob, y la frecuencia debe establecer un valor que se adapte a su disponibilidad de recursos y la frecuencia de los cambios de GitLab.

Primero, abra su crontab.

Anuncio
sudo crontab -e

A continuación, agregue el siguiente ejemplo y modifique el tiempo para adaptarlo a sus necesidades. Si no está seguro del momento, visite crontab.guru.

00 */3 * * *  gitlab-rake gitlab:backup:create

Lo anterior crea una copia de seguridad cada 3 horas exactamente.

Anuncio

Ejemplo:

Cómo instalar y configurar GitLab en Debian 11 Bullseye

Una vez hecho, CTRL + O luego sale del archivo con CTRL + X.

Alternativamente, puede ejecutar la tarea manualmente ejecutando el siguiente comando.

sudo gitlab-rake gitlab:backup:create

Una vez que se haya completado la copia de seguridad, recibirá el siguiente mensaje en su terminal.

Anuncio
Backup task is done.

Comentarios y Conclusión

En el siguiente tutorial, ha aprendido cómo instalar GitLab en Debian 11 Bullseye, configurar TLS/SSL con Lets Encrypt y crear un trabajo cron de copia de seguridad. En general, GitLab autohospedado puede ser más importante que depender de un tercero si la privacidad es una preocupación importante y puede hacer que el desarrollo sea más fácil y rápido.

Anuncio


¿No es lo que estabas buscando? Intente buscar tutoriales adicionales.

2 pensamientos sobre "Instalar y configurar GitLab en Debian 11 Bullseye"

  1. Hola
    Solo quería seguir las instrucciones para instalar el repositorio a través de un script, pero aparece el mensaje cuando lo ejecuto:
    ---------------------------
    curl: (22) La URL solicitada devolvió el error: 404
    No se puede descargar la configuración del repositorio desde: https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/config_file.list?os=debian&dist=11&source=script
    ---------------------------
    ¿Qué está pasando mal?
    Carsten

    Responder
    • Hola Carsten,

      Acabo de probarlo, funciona bien aquí todavía en mi extremo.

      Sistema operativo detectado como debian/bullseye.
      Comprobando si hay rizos…
      Rizo detectado…
      Buscando gpg…
      gpg detectado…
      Ejecutando apt-get update… listo.
      Instalación de debian-archive-keyring que se necesita para la instalación
      apt-transport-https en muchos sistemas Debian.
      Instalando apt-transport-https… hecho.
      Instalando /etc/apt/sources.list.d/gitlab_gitlab-ce.list…hecho.
      Importando clave gpg de packagecloud... hecho.
      Ejecutando apt-get update… listo.

      ¡El repositorio está configurado! Ahora puede instalar paquetes.

      ¿Copiaste manualmente o usaste la función copiar/pegar?

      Debería funcionar, también parece que agregaron la rama Bullseye ahora, ya no deberías necesitar cambiar a Buster. Actualizaré el tutorial sobre esta parte.

      Responder

Deja un comentario