Cómo instalar Jenkins en Rocky Linux 8

Jenkins es un sistema de construcción continua de código abierto. Es una aplicación basada en servidor escrita en Java, y normalmente se ejecuta como un servicio en segundo plano en máquinas Windows o Unix. Utilizamos Jenkins para supervisar automáticamente el repositorio de cambios de nuestro código fuente. En cuanto alguien introduce sus cambios en el repositorio central de código fuente, Jenkins analiza los nuevos archivos fuente en busca de cambios. Si encuentra que el archivo fuente ha cambiado desde nuestra última compilación, entonces Jenkins inicia una nueva compilación en nuestro Servidor de Integración Continua.

Jenkins nos ayuda sustancialmente con dos tareas importantes:

  • Se asegura de que todos los desarrolladores trabajan con la última versión de los fuentes del proyecto.
  • Avisa a todos en caso de que algo vaya mal durante una compilación o despliegue.

Jenkins es compatible con muchas herramientas DevOps de gestión de código (SCM), como BitBucket, Git, CVS, Mercurial, Perforce, etc. Al utilizar Jenkins para sondear los cambios en nuestro repositorio de código fuente, podemos asegurarnos de que todos los desarrolladores tienen la última copia de las fuentes del proyecto y de que están trabajando con estos nuevos cambios.

Por ejemplo, el desarrollador A comprueba una versión nueva del sistema de control de código fuente principal del proyecto, y una vez que ha realizado algunos cambios en algunos archivos, puede enviar sus confirmaciones locales para que otros desarrolladores puedan utilizarlas. El desarrollador B puede haber estado editando el mismo archivo más o menos en ese momento, y entonces también introduce sus cambios en el repositorio central de código. De repente, cada vez que el desarrollador A intente consultar su copia local del proyecto, se le notificará que hay cambios más recientes disponibles en el repositorio central de código. Esto nos evita tener que sacar cambios a medias o desactualizados de otros desarrolladores y perder nuestras propias ediciones de vez en cuando.

En esta guía, te guiaremos a través del proceso de instalación y configuración de un servidor Jenkins en una máquina Rocky Linux 8. Esta guía también es aplicable a otros sistemas operativos Red Hat Linux y SUSE Linux.

Requisitos previos

  • Un servidor con una instalación nueva de Rocky Linux 8, con un mínimo de 1 GB de RAM. 10 GB de espacio libre para cada contenedor docker que Jenkins vaya a crear.
  • Un usuario no root con privilegios sudo.
  • Esta guía asume que tu servidor puede acceder a Internet, ya sea a través de una conexión directa o a través de un router/proxy ascendente.

Paso 1: Actualizar el sistema

Lo primero que tenemos que hacer es actualizar nuestro sistema. Es importante hacer borrón y cuenta nueva actualizando todos los paquetes existentes en nuestra máquina.

sudo dnf update

o

sudo yum update

Se recomienda reiniciar el sistema si has actualizado algún paquete importante del sistema, como el Kernel, para asegurarte de que los cambios se aplican correctamente.

sudo reboot now

Vuelve a iniciar sesión con el mismo usuario no root y continúa con el siguiente paso.

Paso 2: Instalar Java

Jenkins necesita el Kit de Desarrollo de Java (JDK) para funcionar, así que tendremos que instalarlo. El JDK es un paquete de la mayoría de las distribuciones de Linux que contiene el entorno de ejecución de Java (JRE) y otras herramientas para ejecutar/desarrollar aplicaciones y bibliotecas escritas en el lenguaje de programación Java.

Tanto el JDK 11 como el JDK 8 están disponibles en el repositorio oficial de Rocky Linux 8. Puedes comprobar qué versión del JDK está disponible en tu sistema escribiendo el siguiente comando.

sudo dnf search java-*-openjdk

Deberías ver un resultado como el siguiente.

Instalar Java

Jenkins puede funcionar tanto con JDK 11 como con JDK 8, pero algunos plugins antiguos de Jenkins pueden no ser compatibles con JDK 11. Se recomienda utilizar JDK 8. En este paso, instalaremos JDK 8 utilizando el siguiente comando.

sudo dnf install java-1.8.0-openjdk -y

Una vez instalado java, puedes verificar que se ha instalado correctamente comprobando su versión.

java -version

Deberías ver una salida como la siguiente.

versión java

Paso 3: Añadir el repositorio Jenkins

El paquete Jenkins no está incluido en el repositorio oficial de Rocky Linux 8. Tienes que añadir un repositorio Jenkins para que el sistema descargue e instale el paquete desde él. Nosotros utilizaremos el repositorio oficial de Jenkins proporcionado por el equipo de Jenkins.

sudo dnf install wget -y
sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo

Ahora, añade la clave GPG para el repositorio utilizando el comando rpm.

sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key

Comprobemos si el repositorio se ha añadido correctamente o no utilizando el siguiente comando.

sudo dnf repolist

Si todo ha ido correctamente, deberías ver una salida como la siguiente.

Paso 4: Instalar el Servidor Jenkins

Antes de instalar el servidor Jenkins, actualiza los repositorios utilizando el siguiente comando:

sudo dnf update -y

Ahora, puedes instalar el servidor Jenkins escribiendo el siguiente comando.

sudo dnf install jenkins -y

Si no aparece ningún error ni ningún mensaje específico en la pantalla después de escribir el comando anterior, significa que la instalación de Jenkins se ha realizado correctamente. Para comprobar si todo se ha instalado correctamente, ejecuta el siguiente comando:

sudo systemctl status jenkins

La salida de este comando debería ser algo parecido a esto.

 estado jenkins

Si el servicio jenkins no se está ejecutando, puedes iniciarlo escribiendo el siguiente comando.

sudo systemctl start jenkins

Para que el servicio jenkins se inicie automáticamente cada vez que reinicies el sistema, escribe:

sudo systemctl enable jenkins

Paso 5: Configurar el cortafuegos

Si instalas Jenkins en un servidor detrás de un cortafuegos, tendrás que abrir algunos puertos tanto en el cortafuegos como en la máquina anfitriona para que se pueda acceder a Jenkins.

Jenkins utiliza el puerto 8080 por defecto para el acceso remoto, así que puede que quieras abrir este puerto para permitir una conexión externa.

sudo firewall-cmd --permanent --zone=public --add-port=8080/tcp

Recarga tu cortafuegos para aplicar los cambios que has realizado.

sudo firewall-cmd --reload

Si se han realizado correctamente, el puerto 8080 debería estar abierto en la zona externa de tu cortafuegos. Puedes comprobarlo ejecutando el siguiente comando.

sudo firewall-cmd --list-all

Deberías obtener una salida como ésta.

Configurar el cortafuegos

Paso 6: Configurar el servidor Jenkins

Abre un navegador web y escribe la dirección IP del servidor con el puerto 8080 para acceder a Jenkins.

http://server_IP_address:8080

Donde: dirección_IP_servidor es la dirección IP real de tu servidor. Por ejemplo, para acceder al servidor Jenkins en 192.168.1.5, escribirías http://192.168.1.5:8080.

Debería aparecer la página de Introducción a Jenkins, con un consejo sobre cómo recuperar una contraseña inicial de administrador.

Configurar el servidor Jenkins

Se trata de una contraseña temporal creada automáticamente (pero no mostrada) por el servidor Jenkins durante la instalación.

Vuelve a tu terminal y ejecuta el siguiente comando para recuperar la contraseña.

sudo cat /var/lib/jenkins/secrets/initialAdminPassword

Esto imprimirá la contraseña de administrador en tu terminal.

Configurar el servidor Jenkins

Copia y pega esta contraseña en el campo de la contraseña inicial de administrador en la página de Inicio de Jenkins. Haz clic en Continuar en la parte inferior derecha.

Configurar el servidor Jenkins

Accederás a la página de plug-ins. Selecciona la opción Instalar plugins sugeridos y haz clic en Instalar en la parte inferior de la página.

Configurar el servidor Jenkins

Esto instala un conjunto estándar de plugins que son necesarios para que Jenkins funcione correctamente.

Configurar el servidor Jenkins

Una vez completada la instalación, accederás a la página Crear primer usuario administrador. Escribe un nombre de usuario y una contraseña para el primer usuario administrador. Y haz clic en Guardar y continuar.

Configurar el servidor Jenkins

Aparecerá una página de Configuración de Instancia, en la que deberás especificar la URL raíz de tu servidor Jenkins. Mantén la predeterminada y haz clic en Guardar y finalizar.

Configurar el servidor Jenkins

 

Por último, haz clic en Comenzar a utilizar Jenkins en la última página.

 

Configurar el servidor Jenkins

Accederás al panel de Jenkins, donde empezarás a crear tu primer proyecto.

Configurar el servidor Jenkins

La instalación y configuración de Jenkins ya están completas.

Conclusión

En este tutorial, has aprendido a instalar Jenkins en un sistema Rocky Linux 8. Ahora puedes disfrutar de las ventajas de la integración continua y la entrega continua en tu proceso de desarrollo de proyectos. ¡Feliz programación!

Para más información sobre Jenkins, consulta la documentación oficial de Jenkins.

Si tienes alguna pregunta o sugerencia, no dudes en dejar un comentario a continuación.

También te podría gustar...