GNU/Linux >> Tutoriales Linux >  >> Debian

Instalar y configurar GitLab en Debian 11 Bullseye

GitLab es un repositorio de código gratuito y de código abierto basado en la web para el desarrollo de software colaborativo para DevOps, escrito en los lenguajes de programación Ruby y Go. El lema principal de GitLab es “Aporta velocidad con confianza, seguridad sin sacrificios y visibilidad del éxito de DevOps”. Es una alternativa bastante popular a GitHub que proporciona características 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

  • SO recomendado: Diana de Debian 11.
  • Cuenta de usuario: Una cuenta de usuario con sudo o acceso 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 usará el comando sudo y asumiendo que tiene estado sudo .

Para verificar el estado de sudo en su cuenta:

sudo whoami

Ejemplo de salida que muestra el estado de sudo:

[joshua@debian~]$ sudo whoami
root

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

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

su

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

Ejemplo:

Instalar dependencias para GitLab

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

Abre tu terminal y ejecuta 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 descargues y lo ejecutes para ayudarte en esta tarea.

Descargue el script APT de GitLab usando el comando curl :

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

Ejemplo de salida del script:

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.

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

Ejemplo de resultados y dependencias que se instalarán en GitLab:

Tipo Y, luego presione la TECLA ENTER para continuar con la instalación.

Tenga en cuenta que el tamaño de la instalación es de 2,5 GB , por lo que las conexiones a Internet lentas podrían esperar un tiempo para completar la descarga y la 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 básicas de configuración que se deben realizar. Sin embargo, puede realizar configuraciones alternativas a las que se enumeran a continuación.

Primero, abra el “gitlab.rb” archivo de configuración usando cualquier editor de texto:

sudo nano nano /etc/gitlab/gitlab.rb

La primera configuración será configurar 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.

Ejemplo:

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.

 letsencrypt['enable'] = true
 letsencrypt['contact_emails'] = ['[email protected]']
 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:

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

Ahora ejecute el comando de reconfiguración 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.

cat /etc/gitlab/initial_root_password

Ejemplo de salida:

# 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.

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:

https://gitlab.example.com

A continuación, inicie sesión con el nombre de usuario “root” y la contraseña que recibiste, que en el caso del tutorial era “SGGg/WQ9+N1JdgouIbPftla+Kt8Qcyr+HL5oJfRbBmM=” .

Ejemplo:

Ha iniciado sesión con éxito como la cuenta raíz y accederá a la página de destino predeterminada.

Ejemplo:

Desde aquí, puede proceder a instalar y configurar GitLab para que se adapte a sus requisitos 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 Menú> Admin en la parte superior izquierda esquina de la página.

Ejemplo:

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

De forma predeterminada, no se crean ni configuran copias de seguridad. Esto debe configurarse 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, abre tu crontab.

sudo crontab -e

A continuación, agregue el siguiente ejemplo y modifique el tiempo para que se ajuste 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.

Ejemplo:

Una vez hecho esto, 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.

Backup task is done.

Debian
  1. Cómo instalar Docker en Debian 11 (Bullseye)

  2. Cómo instalar TeamViewer en Debian 11 Bullseye

  3. Cómo instalar AnyDesk en Debian 11 Bullseye

  4. Cómo instalar y configurar Wine (WineHQ) en Debian 11 Bullseye

  5. Cómo instalar GitLab en Debian 9

Cómo instalar Memcached en Debian 11 Bullseye

Cómo instalar Redis en Debian 11 Bullseye

Instalar Htop en Debian 11 Bullseye

Instalar Neofetch en Debian 11 Bullseye

Instalar CMake en Debian 11 Bullseye

Cómo instalar Gitlab en Debian 10