Jenkins es un servidor de automatización de código abierto que automatiza las tareas técnicas repetitivas relacionadas con la integración continua de software. Jenkins está basado en Java, y se instala desde los paquetes de RockyLinux o descargando y ejecutando su archivo de aplicación web (WAR), una colección de archivos que conforman una aplicación web completa para ejecutar en un servidor.
En este tutorial instalaremos Jenkins en RockyLinux 9.1, iniciaremos el servidor de desarrollo y crearemos un usuario administrativo para empezar a explorar la automatización de Jenkins.
Requisitos previos
Para seguir este tutorial necesitarás:
- Un servidor con RockyLinux 9.1 con acceso total con 1G de RAM como mínimo.
- OpenJDK 11 instalado en el servidor.
Si necesitas instalar OpenJDK en el servidor puedes revisar este artículo que explica como hacerlo:

Instalación de Jenkins
La versión de Jenkins incluida en los paquetes por defecto de RockyLinux suele estar por detrás de la última versión disponible del propio proyecto. Para asegurarse de que tiene las últimas correcciones y características, utilizaremos los paquetes mantenidos por el proyecto para instalar Jenkins.
Añadimos los repositorios y actualizamos:
wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo
rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key
Instalamos el paquete desde DNF:
dnf install jenkins
Una vez instalado, iniciamos el servicio y lo habilitamos al arranque del servidor:
systemctl start jenkins.service
systemctl enable jenkins.service
Revisamos el estado del servicio:
# systemctl enable jenkins.service
Created symlink /etc/systemd/system/multi-user.target.wants/jenkins.service → /usr/lib/systemd/system/jenkins.service.
[root@docker ~]# systemctl status jenkins.service
● jenkins.service - Jenkins Continuous Integration Server
Loaded: loaded (/usr/lib/systemd/system/jenkins.service; enabled; vendor preset: disabled)
Active: active (running) since Thu 2023-03-16 19:06:52 CET; 33s ago
Main PID: 23059 (java)
Tasks: 45 (limit: 12329)
Memory: 349.1M
CPU: 41.639s
CGroup: /system.slice/jenkins.service
└─23059 /usr/bin/java -Djava.awt.headless=true -jar /usr/share/java/jenkins.war --webroot=/var/cache/jenkins/war --httpPort=>
8080
, por lo que deberás de abrir ese puerto en el Firewall de tu servidor.Configuramos Jenkins
Tras la instalación de Jenkins, lo que haremos será acceder mediante el navegador utilizando la IP Pública del servidor y el puerto 8080
.

Tendremos que mostrar el fichero que nos indican para encontrar la contraseña para desbloquear Jenkins:
# cat /var/lib/jenkins/secrets/initialAdminPassword
e59e42674fa54ba9aa9a5914c8XXXXX
La siguiente pantalla nos indicará si instalar los plugins por defecto o seleccionar los plugins manualmente. Recomiendo marcar la primera opción.

Al hacer clic sobre esa opción iniciará la instalación de plugins:

Una vez finalice la instalación, deberemos de crear la cuenta administradora.

A continuación, podemos seleccionar la URL de acceso:

En este apartado podemos dejar la IP de nuestro servidor y luego configurar un Nginx Proxy para acceder vía dominio.
Al acabar, ya podremos acceder:


Securizar Jenkins
Para añadir un SSL a Jenkins es necesario configurar un Nginx Proxy al puerto 8080. De esta forma podremos acceder mediante un nombre de dominio y SSL.
Para hacerlo, recuerda que puedes seguir estas otras instrucciones:

Configurar Jenkins para acceder con dominio
Ahora que tenemos configurado Nginx para que escuche en 127.0.0.1:8080
, deberemos de indicar en la configuración de Jenkins que responda internamente por ese puerto.
Para ello editaremos el fichero de configuración del servicio /lib/systemd/system/jenkins.service
y descomentaremos la siguiente línea y añadiremos la IP 127.0.0.1
:
Environment="JENKINS_LISTEN_ADDRESS=127.0.0.1"
Guardamos y salimos.
Tocará reiniciar Jenkins para que cargue la nueva configuración:
systemctl restart jenkins
Si revisamos el status del servicio, veremos que esta vez se lanza con un parámetro llamado --httpListenAddress
:
# systemctl status jenkins
● jenkins.service - Jenkins Continuous Integration Server
Loaded: loaded (/lib/systemd/system/jenkins.service; enabled; vendor preset: enabled)
Active: active (running) since Wed 2022-08-24 17:11:21 UTC; 5s ago
Main PID: 32982 (java)
Tasks: 48 (limit: 4626)
Memory: 352.2M
CPU: 12.330s
CGroup: /system.slice/jenkins.service
└─32982 /usr/bin/java -Djava.awt.headless=true -jar /usr/share/java/jenkins.war --webroot=/var/cache/jenkins/war --httpPort=8080 --httpListenAddress=127.0.0.1
Una vez podemos acceder por dominio y SSL, es recomendable modificar la contraseña de admin
ya que la contraseña la hicimos sin SSL y no es seguro.
Y listo, ya tienes instalado Jenkins en tu servidor! En próximos tutoriales veremos como crear tareas y configurar algún plugin.
Comentarios