Instalar GitLab en Alma Linux 8

Acceso a GitLab

GitLab es un software DevOps gratuito y de código abierto que viene con múltiples herramientas para desarrollar, asegurar y operar software en una sola aplicación. Proporciona repositorios ilimitados y colaboradores ilimitados. Se utiliza principalmente para alojar repositorios Git, con características adicionales relacionadas con el desarrollo como el seguimiento de problemas. Es muy similar a Github y Bitbucket y permite a los individuos y equipos compartir el código de forma remota con otros.

GitLab está disponible en cuatro ediciones principales:

  • GitLab Edición Comunitaria – Gratis, de código abierto y con alojamiento propio.
  • GitLab Edición Empresarial – Autoalojado y de pago con características adicionales.
  • GitLab.com – Gratuito, y SaaS.
  • GitLab.io – Instancia privada de GitLab gestionada por GitLab Inc.

En este post, vamos a explicar cómo instalar GitLab CE en Alma Linux 8.

Requisitos previos

  • Un servidor con Alma Linux 8.
  • Un nombre de dominio válido apuntado con la IP de su servidor.
  • Se ha configurado una contraseña de root en el servidor.

Añadir el repositorio GitLab CE

Por defecto, el paquete GitLab no está incluido en el repositorio por defecto de Alma Linux. Así que tendrá que añadir el repositorio oficial de GitLab a su sistema. Puede descargar y añadir el siguiente script para añadir el repositorio de GitLab.

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

Obtendrá la siguiente salida:

Complete!
Generating yum cache for gitlab_gitlab-ce...
Importing GPG key 0x51312F3F:
 Userid     : "GitLab B.V. (package repository signing key) <[email protected]>"
 Fingerprint: F640 3F65 44A3 8863 DAA0 B6E0 3F01 618A 5131 2F3F
 From       : https://packages.gitlab.com/gitlab/gitlab-ce/gpgkey
Importing GPG key 0xF27EAB47:
 Userid     : "GitLab, Inc. <[email protected]>"
 Fingerprint: DBEF 8977 4DDB 9EB3 7D9F C3A0 3CFC F9BA F27E AB47
 From       : https://packages.gitlab.com/gitlab/gitlab-ce/gpgkey/gitlab-gitlab-ce-3D645A26AB9FBD22.pub.gpg
Generating yum cache for gitlab_gitlab-ce-source...

The repository is setup! You can now install packages.

Puede verificar el repositorio instalado utilizando el siguiente comando:

cat /etc/yum.repos.d/gitlab_gitlab-ce.repo

Obtendrá la siguiente salida:

[gitlab_gitlab-ce]
name=gitlab_gitlab-ce
baseurl=https://packages.gitlab.com/gitlab/gitlab-ce/el/8/$basearch
repo_gpgcheck=1
gpgcheck=1
enabled=1
gpgkey=https://packages.gitlab.com/gitlab/gitlab-ce/gpgkey
       https://packages.gitlab.com/gitlab/gitlab-ce/gpgkey/gitlab-gitlab-ce-3D645A26AB9FBD22.pub.gpg
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt
metadata_expire=300

[gitlab_gitlab-ce-source]
name=gitlab_gitlab-ce-source
baseurl=https://packages.gitlab.com/gitlab/gitlab-ce/el/8/SRPMS
repo_gpgcheck=1
gpgcheck=1
enabled=1
gpgkey=https://packages.gitlab.com/gitlab/gitlab-ce/gpgkey
       https://packages.gitlab.com/gitlab/gitlab-ce/gpgkey/gitlab-gitlab-ce-3D645A26AB9FBD22.pub.gpg
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt
metadata_expire=300

También puedes listar el repo de GitLab usando el siguiente comando:

dnf repolist

Obtendrá la siguiente salida:

repo id                                                               repo name
appstream                                                             Rocky Linux 8 - AppStream
baseos                                                                Rocky Linux 8 - BaseOS
extras                                                                Rocky Linux 8 - Extras
gitlab_gitlab-ce                                                      gitlab_gitlab-ce
gitlab_gitlab-ce-source                                               gitlab_gitlab-ce-source

Instalar GitLab CE en Alma Linux 8

En este punto, el repo de GitLab se crea en su sistema. Ahora puede instalar el GitLab CE ejecutando el siguiente comando:

dnf install gitlab-ce -y

Una vez instalado el GitLab CE, obtendrá la siguiente salida:

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

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


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

Please configure a URL for your GitLab instance by setting `external_url`
Thank you for installing GitLab!
GitLab was unable to detect a valid hostname for your instance.
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 minute survey:
https://gitlab.fra1.qualtrics.com/jfe/form/SV_6kVqZANThUQ1bZb?installation=omnibus&release=14-8


  Verifying        : gitlab-ce-14.8.2-ce.0.el8.x86_64                       1/1 

Installed:
  gitlab-ce-14.8.2-ce.0.el8.x86_64                                              

Complete!

Configurar GitLab CE

A continuación, deberá definir su nombre de dominio en el archivo de configuración de GitLab. Para ello, edite el archivo de configuración de GitLab:

nano /etc/gitlab/gitlab.rb

Cambie la siguiente línea con su nombre de dominio:

external_url 'http://gitlab.example.com'

Guarde y cierre el archivo y luego reconfigure el GitLab usando el siguiente comando:

gitlab-ctl reconfigure

Una vez reconfigurado el GitLab CE, obtendrá la siguiente salida:

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.

gitlab Reconfigured!

Ahora puede comprobar el estado del GitLab CE mediante el siguiente comando:

gitlab-ctl status

Obtendrá la siguiente salida:

run: gitaly: (pid 26684) 69s; run: log: (pid 25075) 351s
run: gitlab-exporter: (pid 26617) 73s; run: log: (pid 25555) 207s
run: gitlab-kas: (pid 26585) 75s; run: log: (pid 25339) 334s
run: gitlab-workhorse: (pid 26595) 74s; run: log: (pid 25472) 229s
run: grafana: (pid 26665) 70s; run: log: (pid 26315) 110s
run: logrotate: (pid 25000) 364s; run: log: (pid 25008) 363s
run: nginx: (pid 25488) 226s; run: log: (pid 25499) 222s
run: node-exporter: (pid 26603) 74s; run: log: (pid 25541) 213s
run: postgres-exporter: (pid 26659) 70s; run: log: (pid 25891) 168s
run: postgresql: (pid 25207) 341s; run: log: (pid 25218) 340s
run: prometheus: (pid 26631) 72s; run: log: (pid 25629) 194s
run: puma: (pid 25406) 249s; run: log: (pid 25417) 246s
run: redis: (pid 25039) 358s; run: log: (pid 25047) 357s
run: redis-exporter: (pid 26620) 73s; run: log: (pid 25575) 201s
run: sidekiq: (pid 25423) 243s; run: log: (pid 25435) 239s

Para detener el GitLab, ejecute el siguiente comando:

gitlab-ctl stop

Para iniciar el GitLab, ejecute el siguiente comando:

gitlab-ctl start

Una vez que haya terminado, puede continuar con el siguiente paso.Anuncio

Configurar el cortafuegos

A continuación, tendrá que permitir el servicio HTTP a través del firewalld. Puede permitirlo usando el siguiente comando:

firewall-cmd --permanent --add-service=http

A continuación, recargue el demonio firewalld para aplicar los cambios:

systemctl reload firewalld

Una vez que el cortafuegos esté configurado, puede pasar al siguiente paso.

Acceda a GitLab CE

Antes de acceder a GitLab CE, recupera la contraseña de root de GitLab con el siguiente comando:

cat /etc/gitlab/initial_root_password

Deberías ver la contraseña raíz de GitLab CE en la siguiente 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: XIlQ4/J7oQ49ZdNuGZto3f5vEJGHZJSTRSIuYL9z0/k=

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

Ahora, abre tu navegador web y accede a la interfaz web de GitLab usando la URL http://gitlab.example.com. Será redirigido a la página de inicio de sesión de GitLab:

Acceso a GitLab

Proporcione su nombre de usuario y contraseña, y haga clic en el botón Iniciar sesión …]. Debería ver la interfaz web de GitLab en la siguiente página:

Panel de control de Gitlab

Configurar la copia de seguridad de GitLab

GitLab también permite crear una copia de seguridad de la instancia de GitLab. Para crear una copia de seguridad de la instancia de GitLab, ejecute el siguiente comando:

gitlab-rake gitlab:backup:create

Una vez creada la copia de seguridad, obtendrá la siguiente salida:

2022-03-11 11:13:11 +0000 -- done
2022-03-11 11:13:11 +0000 -- Dumping uploads ... 
2022-03-11 11:13:11 +0000 -- done
2022-03-11 11:13:11 +0000 -- Dumping builds ... 
2022-03-11 11:13:11 +0000 -- done
2022-03-11 11:13:11 +0000 -- Dumping artifacts ... 
2022-03-11 11:13:11 +0000 -- done
2022-03-11 11:13:11 +0000 -- Dumping pages ... 
2022-03-11 11:13:11 +0000 -- done
2022-03-11 11:13:11 +0000 -- Dumping lfs objects ... 
2022-03-11 11:13:11 +0000 -- done
2022-03-11 11:13:11 +0000 -- Dumping terraform states ... 
2022-03-11 11:13:11 +0000 -- done
2022-03-11 11:13:11 +0000 -- Dumping container registry images ... 
2022-03-11 11:13:11 +0000 -- [DISABLED]
2022-03-11 11:13:11 +0000 -- Dumping packages ... 
2022-03-11 11:13:11 +0000 -- done
Creating backup archive: 1646997191_2022_03_11_14.8.2_gitlab_backup.tar ... done
Uploading backup archive to remote storage  ... skipped
Deleting tmp directories ... done

Por defecto, la copia de seguridad de GitLab se almacena en /var/opt/gitlab/backups. Puedes cambiar la ruta de las copias de seguridad editando los ajustes en el archivo de configuración de GitLab en /etc/gitlab/gitlab.rb.

Puede verificar la copia de seguridad generada utilizando el siguiente comando:

ls /var/opt/gitlab/backups

Obtendrá la siguiente salida:

1646997191_2022_03_11_14.8.2_gitlab_backup.tar

Restablecer la contraseña raíz de GitLab

Si olvida la contraseña de administrador de GitLab, puede restablecerla fácilmente con el siguiente comando:Advertisement

gitlab-rake "gitlab:password:reset"

Se le pedirá que establezca su nueva contraseña como se muestra a continuación:

Enter username: root
Enter password: 
Confirm password: 
Password successfully updated for user with username root.

Conclusión

Enhorabuena! has instalado con éxito GitLab CE en Alma Linux 8. Ahora puedes empezar a usar GitLab en tu entorno de desarrollo. No dudes en preguntarme si tienes alguna duda.

Deja una respuesta

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