Tutorial

Cómo instalar Jenkins en Ubuntu 18.04

UbuntuSystem ToolsUbuntu 18.04

Introducción

Jenkins es un servidor de automatización de código abierto que automatiza las tareas técnicas repetitivas que se requieren en la integración continua y la entrega de software. Jenkins está basado en Java y puede instalarse desde paquetes de Ubuntu o descargando y ejecutando su archivo de aplicación web (WAR): una colección de archivos que componen una aplicación web completa para el funcionamiento en un servidor.

A través de este tutorial, instalará Jenkins agregando su repositorio de paquetes de Debian y utilizando ese repositorio para instalar el paquete con apt.

Requisitos previos

Para seguir este tutorial, necesitará lo siguiente:

Paso 1: Instalar Jenkins

La versión de Jenkins incluida con los paquetes predeterminados de Ubuntu suele ser anterior a la última versión disponible del propio proyecto. Para aprovechar las últimas correcciones y características, puede utilizar los paquetes del proyecto para instalar Jenkins.

Primero, agregue la clave del repositorio al sistema:

  • wget -q -O - https://pkg.jenkins.io/debian/jenkins.io.key | sudo apt-key add -

Cuando se agregue la clave, el sistema mostrará OK. A continuación, anexe la dirección del repositorio de paquetes de Debian a la sources.list del servidor:

  • sudo sh -c 'echo deb http://pkg.jenkins.io/debian-stable binary/ > /etc/apt/sources.list.d/jenkins.list'

Cuando ambos estén preparados, ejecute update para que apt utilice el nuevo repositorio:

  • sudo apt update

Por último, instale Jenkins y sus dependencias:

  • sudo apt install jenkins

Ahora que Jenkins y sus dependencias están instaladas, iniciaremos el servidor de Jenkins.

Paso 2: Iniciar Jenkins

Iniciemos Jenkins utilizando systemctl:

sudo systemctl start jenkins

Debido a que systemctl no muestra un resultado, puede utilizar su comando status para verificar que Jenkins se haya iniciado de forma correcta:

  • sudo systemctl status jenkins

Si todo salió bien, en la primera parte del resultado se debería ver que el servicio está activo y configurado para iniciarse en el arranque:

Output
● jenkins.service - LSB: Start Jenkins at boot time Loaded: loaded (/etc/init.d/jenkins; generated) Active: active (exited) since Mon 2018-07-09 17:22:08 UTC; 6min ago Docs: man:systemd-sysv-generator(8) Tasks: 0 (limit: 1153) CGroup: /system.slice/jenkins.service

Ahora que Jenkins funciona, ajustaremos las reglas de nuestro firewall para poder acceder desde un navegador web a fin de completar la configuración inicial.

Paso 3: Abrir el firewall

De forma predeterminada, Jenkins se ejecuta en el puerto 8080. Abramos ese puerto utilizando ufw:

  • sudo ufw allow 8080

Compruebe el estado de ufw para confirmar las nuevas reglas:

  • sudo ufw status

Verá que se permite el tráfico en el puerto 8080 desde cualquier lugar:

Output
Status: active To Action From -- ------ ---- OpenSSH ALLOW Anywhere 8080 ALLOW Anywhere OpenSSH (v6) ALLOW Anywhere (v6) 8080 (v6) ALLOW Anywhere (v6)

Nota: Si el firewall está desactivado, los siguientes comandos lo activarán y permitirán OpenSSH:

  • sudo ufw allow OpenSSH
  • sudo ufw enable

Con Jenkins instalado y el firewall configurado, podemos completar la configuración inicial.

Paso 4: Configurar Jenkins

Para configurar su instalación, visite Jenkins en su puerto predeterminado, 8080, utilizando su nombre de dominio o dirección IP: http://your_server_or_domain:8080

Debería visualizar la pantalla de Unlock Jenkins, en la que se muestra la ubicación de la contraseña inicial:

Pantalla “Unlock Jenkins”

En la ventana de la terminal, utilice el comando cat para mostrar la contraseña:

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

Copie la contraseña alfanumérica de 32 caracteres de la terminal, péguela en el campo Administrator password y luego haga clic en Continue.

En la siguiente pantalla se muestra la opción de instalación de complementos sugeridos o selección de complementos específicos:

Pantalla de Customize Jenkins

Haremos clic en la opción Install suggested plugins, con la cual se iniciará de inmediato el proceso de instalación:

Pantalla Getting Started de Jenkins; instalación de complementos

Una vez finalizada la instalación, se le solicitará configurar el primer usuario administrativo. Es posible omitir este paso y continuar como admin utilizando la contraseña inicial que se usó anteriormente, pero nos tomaremos un momento para crear el usuario.

Nota: El servidor predeterminado de Jenkins NO está cifrado, por lo que los datos ingresados con este formulario no están protegidos. Cuando esté listo para utilizar esta instalación, siga la guía Cómo configurar Jenkins con SSL utilizando un proxy inverso de Nginx en Ubuntu 18.04. Esto protegerá las credenciales y la información sobre compilaciones transmitidas a través de la interfaz web.

Pantalla Create First Admin User de Jenkins

Introduzca el nombre y la contraseña de su usuario:

Creación de usuario de Jenkins

Vera una página Instance Configuration en la que se le solicitará confirmar la URL preferida para su instancia de Jenkins. Confirme el nombre de dominio o la dirección IP de su servidor:

Página Instance Configuration de Jenkins

Después de confirmar la información correspondiente, haga clic en** Save and Finish. Visualizará una página de confirmación con el mensaje **“Jenkins is Ready!” (Jenkins está listo):

Pantalla “Jenkins is ready”

Haga clic en Start using Jenkins para visitar el panel principal de Jenkins:

Pantalla “Welcome to Jenkins”

En este punto, habrá completado con éxito la instalación de Jenkins.

Conclusión

A través de este tutorial, instaló Jenkins utilizando los paquetes proporcionados por el proyecto, inició el servidor, abrió el firewall y creó un usuario administrativo. En este momento, podrá comenzar a explorar Jenkins.

Cuando haya completado su exploración, si decide continuar utilizando Jenkins, siga la guía Cómo configurar Jenkins con SSL utilizando un proxy inverso de Nginx en Ubuntu 18.04 para proteger sus contraseñas y cualquier información confidencial relacionada con sistemas o productos que se enviarán su equipo y el servidor en texto simple.

0 Comments

Creative Commons License