Cómo instalar Jenkins en AlmaLinux 8
Jenkins es un software de automatización de código abierto para la integración y el despliegue continuos de aplicaciones.
En pocas palabras, Jenkins es un servidor que se encarga de que tu proyecto haga todo lo complicado automáticamente. Tú puedes concentrarte en escribir código. Es una herramienta de integración continua, lo que significa que ejecuta pruebas automatizadas cada vez que compruebas algún código en un sistema de control de versiones.
¿Qué hace Jenkins?
Jenkins es capaz de hacer muchas, muchas cosas. El uso más común de Jenkins es probablemente comprobar tu proyecto desde el sistema de control de versiones, construirlo y ejecutar pruebas automatizadas contra la aplicación construida. Sin embargo, esto es sólo la punta del iceberg. Jenkins es capaz de mucho más. Puede ejecutar tareas de despliegue, extraer del sistema de control de versiones, supervisar el sistema de archivos en busca de cambios, y muchas otras cosas.
Jenkins es de código abierto y está escrito principalmente en lenguaje Java. Es un servidor de automatización que podemos utilizar porque queremos ser capaces de hacer automáticamente todas las cosas complicadas más de una vez, de modo que cada vez que Jenkins las hace por nosotros, esto elimina los errores humanos.
Jenkins también puede ayudarnos automatizando tareas para que se haga más trabajo con menos esfuerzo por nuestra parte. Dependiendo del tipo de tarea que sea, algunas personas pueden elegir automatizar las pruebas, mientras que otras pueden elegir automatizar los despliegues.
En esta guía, te explicaremos cómo instalar Jenkins en un sistema AlmaLinux 8 y repasaremos algunas ideas básicas de configuración.
Requisitos previos
- Esta guía asume que ya tienes AlmaLinux 8 instalado en tu servidor. También debes tener acceso SSH a tu servidor.
- El acceso root es necesario para instalar Jenkins y realizar algunas otras tareas.
- Requisitos mínimos de hardware: 1 GB de RAM, 10 GB de espacio libre en disco y un procesador decente.
Actualizar el sistema
Antes de empezar, debes asegurarte de que tu servidor está actualizado ejecutando el siguiente comando. Siempre es una buena idea empezar con un sistema fresco y actualizado.
sudo dnf update -y
sudo dnf upgrade -y
sudo dnf install epel-release
Instalación de Java
Para instalar Jenkins en AlmaLinux 8, necesitamos tener instalado Java. Como Jenkin está escrito principalmente en el lenguaje Java, necesitamos tener Java instalado para que esta herramienta funcione.
En este tutorial utilizaremos OpenJDK. OpenJDK es una implementación gratuita y de código abierto de la Plataforma Java, Edición Estándar (Java SE). También puedes utilizar el JDK de Oracle si quieres, pero los repositorios de AlmaLinux 8 no lo proporcionan actualmente.
Ejecuta el siguiente comando para instalar OpenJDK en tu servidor.
sudo dnf install java-1.8.0-openjdk -y
Una vez completada la instalación, verifica la versión de Java que tienes instalada. El siguiente comando debería mostrar la versión de java.
java -version
Salida de ejemplo:
Añadir el repositorio de Jenkins
El repositorio de Jenkins es una ubicación específica en Internet donde puedes descargar Jenkins. Hay muchos repositorios de este tipo. Utilizaremos el más popular, el referenciado por el sitio oficial de Jenkins.
En primer lugar, importaremos la clave PGP pública que el sitio oficial de Jenkins utiliza para firmar sus archivos.
rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key
A continuación, crearemos una nueva lista de fuentes /etc/yum.repos.d/jenkins.repo con el siguiente contenido.
sudo tee /etc/yum.repos.d/jenkins.repo<<EOF [jenkins] name=Jenkins-stable baseurl=http://pkg.jenkins.io/redhat-stable gpgcheck=1 EOF
Ahora ejecuta el comando makecache para descargar los metadatos de todos los paquetes disponibles en esta lista.
sudo dnf makecache
A continuación, ejecuta el siguiente comando para verificar que esta nueva lista de fuentes se ha añadido correctamente. Deberías ver una línea que contenga jenkins en la salida.
sudo dnf repolist
Ejemplo de salida:
Ejecuta el siguiente comando para verificar que el repo de jenkins está habilitado.
sudo dnf repolist Jenkins-stable
Ejemplo de salida:
Si el repositorio de Jenkins no está habilitado, ejecuta el siguiente comando para habilitarlo.
dnf config-manager --set-enabled Jenkins-stable
Instalación de Jenkins
Ahora que hemos añadido el repositorio de Jenkins, podemos instalar Jenkins utilizando el siguiente comando.
sudo dnf -y install jenkins
Una vez instalado, inicia y habilita Jenkins para que se ejecute automáticamente en el momento del arranque utilizando los siguientes comandos.
sudo systemctl start jenkins
sudo systemctl enable jenkin
Para comprobar el estado del servicio Jenkins, ejecuta el siguiente comando. Obtendrás un estado verde activo (en ejecución) si todo está bien.
sudo systemctl status jenkins
Ejemplo de salida:
Detener Jenkins es tan fácil como iniciarlo con el siguiente comando.
sudo systemctl stop jenkins
Configurar el cortafuegos
Jenkins se ejecuta en el puerto 8080 por defecto. Para permitir el acceso a este servicio desde ordenadores externos, es necesario abrir el puerto. También permitiremos las conexiones remotas y permitiremos el tráfico TCP en el puerto 8080 con los siguientes comandos.
sudo firewall-cmd --permanent --zone=public --add-port=8080/tcp
Como regla general, recarga la configuración del cortafuegos para aplicar cualquier regla nueva que hayas añadido con el comando siguiente.
sudo firewall-cmd --reload
Ejecuta el siguiente comando para listar todas las reglas del cortafuegos y comprueba que hay una regla para el puerto 8080.
sudo firewall-cmd --list-all
Ejemplo de salida:
Acceso a la interfaz web de Jenkins
Ahora que has instalado Jenkins y configurado el cortafuegos, puedes acceder a él utilizando tu navegador web escribiendo la dirección IP o el nombre de dominio del servidor seguido del puerto 8080. Por ejemplo, si Jenkins está instalado en un servidor con la dirección IP 192.168.0.1, la URL sería http://192.168.0.1:8080.
Accederás a la página de inicio con un campo de contraseña de administrador como el de la captura de pantalla siguiente. Jenkins utiliza el archivo initialAdminPassword para evitar instalaciones no autorizadas. Esta contraseña se crea automáticamente durante la instalación de Jenkins, pero no se muestra en el terminal.
Para obtener esta contraseña, vuelve a tu terminal y ejecuta el siguiente comando. La contraseña está resaltada en rojo.
cat /var/lib/jenkins/secrets/initialAdminPassword
Copia este valor de la contraseña y utilízalo para completar el campo de la contraseña de administradoren la interfaz web de Jenkins. Rellena la contraseña que has copiado y haz clic en el botón Continuar.
Accederás a la página Personalizar Jenkins, donde se pueden instalar y configurar los plugins. La primera, «Instalar los plugins sugeridos«, es la ruta más recomendada para los recién llegados, pero los usuarios avanzados deberían optar por «Seleccionar el plugin a instalar». » Finalmente, incluso puedes añadir o eliminar plugins más tarde desde la interfaz web de Jenkins.
Una vez completada la instalación del Plugin, se te llevará a la página Crear primer usuario administrador. Proporciona un nombre de usuario, una contraseña y un correo electrónico para este usuario administrador. Se recomienda elegir una contraseña fuerte para esta cuenta. Una vez que hayas introducido tus credenciales, haz clic en el botón Guardar y Finalizar.
En la siguiente página de Configuración de la Instancia, mantén los valores predeterminados y haz clic en el botón Guardar y continuar.
Finalmente, haz clic en Empezar a usar Jenkins en la última página para empezar a usar Jenkins.
Accederás al panel de control de Jenkins, donde podrás empezar a crear trabajos.
Conclusión
En este tutorial, has aprendido a instalar y configurar Jenkins en un servidor AlmaLinux 8. Ahora puedes empezar a añadir trabajos a tu servidor Jenkins, así como a actualizar y monitorizar su estado. También puedes añadir plugins para mejorar la funcionalidad de Jenkins o configurarlo más desde la interfaz web.