Pide tu presupuesto ya!
1st December 2023
¿Pasa mucho tiempo implementando código en su infraestructura con muchos pasos y software? No te preocupes, estás en el lugar indicado para aprender a instalar Jenkinsla herramienta de código abierto más utilizada.
¿No eres lector? ¡Mira este video tutorial relacionado! ¿No ves el vídeo? Asegúrese de que su bloqueador de anuncios esté desactivado.En este tutorial, aprenderá cómo instalar Jenkins en una máquina Ubuntu, para que pueda crear e implementar código con solo hacer clic en un botón.
¡Sigue leyendo y comienza a instalar!
Esta publicación será un tutorial paso a paso. Para seguir adelante, asegúrese de tener una máquina Ubuntu. Este tutorial utiliza ubuntu 18.04 con apache instalado.
Jenkins es un Integración continua (CI) y Despliegue continuo (CD), que puede ejecutar en diferentes servlet contenedores, como gato apache o pez de cristal. Pero para esta demostración, ejecutará Jenkins en su servidor contenedor de servlets Java integrado.
Existen varias implementaciones de Java que puede utilizar para trabajar con Jenkins, pero AbiertoJDK es el más popular, que instalarás y utilizarás en este tutorial.
1. Inicie sesión en su máquina Ubuntu usando su cliente SSH favorito.
2. A continuación, ejecute los siguientes comandos para crear un directorio llamado ~/install_jenkins_demo y cambie a ese directorio.
mkdir ~/install_jenkins_demo
cd ~/install_jenkins_demo
3. Ejecute el apt install comando a continuación para instalar Java en su máquina.
# Installing Java Version: Java SE 11 (LTS)
sudo apt install default-jdk
4. Finalmente, ejecute el siguiente comando para verificar la versión de Java instalada en su máquina. Al hacerlo, se asegurará de haber instalado Java correctamente.
# Checking the Version of Java to verify Java installation.
java -version

Ahora que tiene Java instalado en la máquina Ubuntu, es hora de instalar Jenkins en su máquina. Instalar Jenkins es bastante similar a cómo instalar otros paquetes en su máquina.
Suponiendo que todavía estás conectado al cliente SSH:
1. Primero, ejecute el apt update comando para actualizar los paquetes de su sistema.
2. A continuación, ejecute el wget comando a continuación para agregar la clave pública de Jenkins a su sistema.
Agregar la clave pública permite que el sitio de Jenkins descargue el repositorio oficial de Jenkins o cualquier paquete requerido.
wget -q -O - https://pkg.jenkins.io/debian-stable/jenkins.io.key | sudo apt-key add -
3. Ejecute los siguientes comandos para agregar el repositorio oficial de Jenkins a su sistema y actualizarlo.
# Adding the Jenkins official repository to the system
sudo sh -c 'echo deb https://pkg.jenkins.io/debian-stable binary/ > \
/etc/apt/sources.list.d/jenkins.list'
# Updating the package
sudo apt-get update

4. Ahora, ejecute el siguiente comando para install el Jenkins paquete.
# Installing the Jenkins Package
sudo apt-get install Jenkins

5. Finalmente, ejecute el service comando a continuación para verificar el estado del servicio Jenkins. # Validating the Jenkins service on ubuntu machine service jenkins status
# Validating the Jenkins service on ubuntu machine
service jenkins status
Como puede ver a continuación, el estado muestra que el servicio Jenkins está activo.

A estas alturas, ya se encuentra en la mitad de la instalación exitosa de Jenkins. Pero, antes de empezar a utilizarlo, es necesario configurarlo con las comodidades básicas. ¿Cómo? El primer paso para configurar Jenkins es desbloquear el Jenkins recién instalado.
Suponiendo que todavía estás conectado al cliente SSH:
1. Abra su navegador favorito y navegue hasta la dirección IP del servidor seguida del puerto 8080 como jenkins-ip: 8080. Después de navegar hasta el enlace, deberá desbloquear Jenkins proporcionando la contraseña administrativa. La contraseña administrativa se almacena en /var/lib/jenkins/secrets/initialAdminPassword directorio en el servidor (paso dos).

2. Ejecute el cat comando a continuación para agregar la contraseña de administrador en su máquina desde el /var/lib/jenkins/secrets/initialAdminPassword directorio.
cat /var/lib/jenkins/secrets/initialAdminPassword
Como puede ver a continuación, la cadena enorme en el resultado es la contraseña de administrador. Anote la contraseña de administrador, ya que la necesitará para desbloquear Jenkins (paso tres).

3. Vuelva a su navegador web (Desbloquear Jenkins página) e ingrese la contraseña de administrador que anotó en el paso dos.
Una vez que haya desbloqueado Jenkins, su navegador lo redireccionará a una página donde personalizará su instancia de Jenkins con complementos (paso cuatro).
4. Sobre el Personalizar Jenkins página, haga clic en el Instalar complementos sugeridos opción.
Jenkins Plugin es una herramienta de terceros que se integra con Jenkins y le permite realizar tareas como complemento de git. El complemento Git le permite conectarse con el repositorio de Git, ejecutar comandos de Git, etc.

5. Complete los detalles del usuario administrador, como se muestra a continuación, y haga clic en Guardar y continuar para crear un usuario administrador. Este usuario administrador le permite trabajar con el panel de interfaz de usuario de Jenkins o la instancia de Jenkins.
Tan pronto como presione Guardar y continuar, aparecerá la pantalla de configuración de instancia que se muestra en el paso cinco.
De forma predeterminada, Jenkins tiene un usuario administrador creado con nombre de usuario/contraseña (
admin: admin) pero aún le brinda la opción de crear un usuario administrador de su elección. Puede omitir y continuar como administrador si no desea crear un usuario administrador personalizado.

6. Por último, haga clic en Guardar y finalizar para guardar la configuración de la instancia.
La configuración de la instancia le permite especificar la URL de Jenkins que desea usar y, en este caso, usará la URL predeterminada (es decir, IP del servidor: 8080)


Anteriormente, aprendiste que, de forma predeterminada, Jenkins se ejecuta en el puerto 8080, lo cual está bien. Pero, ¿qué pasa si necesita ejecutar otras aplicaciones en el mismo puerto, como Apache o NGINX? ¡No hay problema! Puede cambiar el puerto predeterminado de Jenkins (8080) y ejecutar la instancia de Jenkins en otros puertos.
1. Abra el /etc/default/Jenkins archivo en su editor de texto preferido y cambie el puerto predeterminado de 8080 a 9090 y guarde los cambios.

2. A continuación, ejecute el siguiente comando para reiniciar Jenkins, de modo que las configuraciones actualizadas entren en vigor.
sudo systemctl restart jenkins
3. Finalmente, navegue hasta la URL de Jenkins, pero esta vez cambie el puerto a 9090, como se muestra a continuación.

A estas alturas, su instancia de Jenkins se está ejecutando perfectamente en el puerto 9090. Pero, ¿es segura? No, no es. Asegure su instancia de Jenkins y evite que los atacantes la comprometan al tener habilitado un certificado SSL.
Los certificados SSL se utilizan principalmente para realizar pruebas en la máquina local cuando no hay ningún certificado disponible de una autoridad de certificación externa.
Para proteger su instancia de Jenkins:
1. Ejecute cada comando a continuación para crear un directorio llamado ~/certificados para almacenar certificados y cambiar a ese directorio.
mkdir ~/certificates
cd ~/certificates
2. A continuación, ejecute lo siguiente openssl comando para generar un Solicitud de firma de certificado (CSR) y una clave privada.
openssl req -x509 -newkey rsa:4096 -keyout apache.key -out apache.crt -days 365 -nodes

3. Ejecute los siguientes comandos y cree otro directorio (/etc/apache2/ssl) y mueva los certificados del ~/certificates/ directorio al /etc/apache2/ssl directorio.
mkdir /etc/apache2/ssl
mv ~/certificates/* /etc/apache2/ssl/.
4. Abra el archivo de configuración predeterminado del sitio SSL Apache (/etc/apache2/sites-available/default-ssl.conf) y agregue las siguientes líneas. Asegúrate de reemplazar <my-server-name> con el nombre real de su servidor.
En el siguiente código, especifica la ubicación (clave de certificado y archivo) donde copió previamente los certificados SSL. Además, para que Jenkins redirija en el puerto 9090agregarás el ProxyPass argumento y encienda el ProxyPreserveHost.
ServerName <my-server-name>
SSLCertificateFile /etc/apache2/ssl/apache.crt
SSLCertificateKeyFile /etc/apache2/ssl/apache.key
ProxyPreserveHost On
ProxyPass / http://127.0.0.1:9090/
ProxyPassReverse / http://127.0.0.1:9090/

5. Ahora ejecute cada comando a continuación para habilitar el módulo SSL, habilitar el sitio que modificó (paso cuatro) y reiniciar el servicio Apache.
# Enable the SSL module, so you can work with SSL connections.
sudo a2enmod ssl proxy proxy_http proxy_balancer
# Enable the site you modified (step four)
sudo a2ensite default-ssl.conf
# Restart the Apache service
sudo service apache2 restart
6. Finalmente, navegue hasta su instancia de Jenkins, pero esta vez usando HTTPS, como se muestra a continuación.
Como puede ver, Jenkins se abre correctamente con conexiones SSL en el puerto HTTPS. No se preocupe si ve un símbolo de advertencia que muestra el No es seguro mensaje. Recibirá esa advertencia ya que está utilizando un certificado autofirmado (creado por usted) y no por el Autoridad certificada.

En este tutorial, aprendió cómo instalar Jenkins en una máquina Ubuntu y verificar que puede acceder a una instancia de Jenkins de forma segura.
Ahora, ¿cómo planeas mejorar tu juego con Jenkins? ¿Quizás automatizar las implementaciones web? ¿O crear una canalización de CD de CI de Jenkins para mejorar su proceso de desarrollo de software?
Leave a comment