GNU/Linux >> Tutoriales Linux >  >> Cent OS

Cómo instalar Jenkins Automation Server con Nginx en CentOS 7

Jenkins es un servidor de integración continua gratuito y de código abierto. Está escrito en JAVA. Se puede utilizar para automatizar diversas tareas relacionadas con el desarrollo de software, como la creación de pruebas y la implementación. Tiene soporte para muchos sistemas de control de versiones como git, SVN, mercurial, etc.

En este tutorial, instalaremos Jenkins Automation Server en el servidor CentOS 7. También configuraremos Nginx como un proxy inverso para Jenkins.

Requisito previo

  • Servidor CentOS 7 mínimo
  • Privilegios de raíz. Esta guía está escrita como usuario root, si ha iniciado sesión como usuario sudo, ejecute sudo -i.

Actualizar sistema base

Antes de instalar cualquier paquete, se recomienda que actualice los paquetes y el repositorio con el siguiente comando.

yum -y update

Una vez que su sistema esté actualizado, continúe para instalar JAVA.

Instalar JAVA 8

Jenkins es compatible con OpenJDK y Oracle JAVA, en este tutorial instalaremos la última versión de OpenJDK en el servidor. Ejecute el siguiente comando para instalar OpenJDK en su servidor.

yum install java-1.8.0-openjdk

Ahora puede verificar la versión de Java usando el siguiente comando.

java -version

Obtendrá el siguiente resultado.

[[email protected] ~]# java -version
openjdk version "1.8.0_131"
OpenJDK Runtime Environment (build 1.8.0_131-b12)
OpenJDK 64-Bit Server VM (build 25.131-b12, mixed mode)

También deberá verificar si la variable de entorno JAVA_HOME está configurada. Ejecute el siguiente comando para lo mismo.

echo $JAVA_HOME

Si obtiene un resultado nulo o en blanco, deberá configurar manualmente la variable JAVA_HOME. Edite el archivo .bash_profile con su editor favorito. En este tutorial, utilizaremos el editor nano. Ejecute el siguiente comando para editar .bash_profile usando nano.

nano ~/.bash_profile

Ahora agregue las siguientes líneas al final del archivo.

export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.131-3.b12.el7_3.x86_64/
export JRE_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.131-3.b12.el7_3.x86_64/jre

Ahora obtenga el archivo usando el siguiente comando.

source ~/.bash_profile

Ahora puede ejecutar el comando echo $JAVA_HOME nuevamente para verificar si la variable de entorno está configurada o no.

[[email protected] ~]# echo $JAVA_HOME 
/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.131-3.b12.el7_3.x86_64/

Ahora que tiene instalado JAVA, puede continuar con la instalación de Jenkins.

Instalar Jenkins

Jenkins se puede instalar directamente agregando el repositorio e importando la clave GPG. Agregue el repositorio de Jenkins a su sistema ejecutando el siguiente comando.

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

Si no tiene instalado wget, puede ejecutar yum -y install wget.

Importe la clave GPG ejecutando el siguiente comando.

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

Una vez que la importación sea exitosa, puede instalar Jenkins ejecutando el siguiente comando.

yum -y install jenkins

Jenkins ahora está instalado en su servidor. Todos los paquetes necesarios ya están instalados. El instalador también creó un nuevo usuario jenkins para ejecutar el proceso. Puede continuar para iniciar el servidor.

Inicio de Jenkins

Puede iniciar Jenkins ejecutando el siguiente comando.

systemctl start jenkins

Para detener a Jenkins, puede ejecutar el siguiente comando.

systemctl stop jenkins

Puede verificar el estado del proceso ejecutando el siguiente comando.

systemctl status jenkins

Instalar Nginx

En lugar de acceder a la aplicación en el puerto 8080, podemos crear un proxy inverso para la aplicación con el servidor web Apache o Nginx. En este tutorial, usaremos nginx como proxy inverso para su aplicación. Ahora nginx se ejecutará detrás del servidor proxy nginx. nginx no está disponible en el repositorio YUM predeterminado. Deberá instalar el repositorio EPEL para instalar Nginx.

yum -y install epel-release

Ahora puede instalar Nginx ejecutando:

yum -y install nginx

Cree un nuevo bloque de servidor ejecutando el siguiente comando.

nano /etc/nginx/conf.d/jenkins.conf

Rellene el archivo con el siguiente contenido. Reemplaza ci.tudominio.com con tu nombre de dominio real.

upstream jenkins{
    server 127.0.0.1:8080;
}

server{
    listen      80;
    server_name ci.yourdomain.com;

    access_log  /var/log/nginx/jenkins.access.log;
    error_log   /var/log/nginx/jenkins.error.log;

    proxy_buffers 16 64k;
    proxy_buffer_size 128k;

    location / {
        proxy_pass  http://jenkins;
        proxy_next_upstream error timeout invalid_header http_500 http_502 http_503 http_504;
        proxy_redirect off;

        proxy_set_header    Host            $host;
        proxy_set_header    X-Real-IP       $remote_addr;
        proxy_set_header    X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header    X-Forwarded-Proto https;
    }

}

Guarde el archivo y salga del editor. Ahora puede iniciar Nginx ejecutando el siguiente comando.

systemctl start nginx

Para permitir que Nginx se inicie automáticamente en el momento del arranque, ejecute el siguiente comando.

systemctl enable nginx

Configurar Firewall y SELinux

Si tiene un firewall ejecutándose en su servidor, deberá permitir el puerto 8080 y el puerto HTTP estándar a través del firewall. Ejecute el siguiente comando para agregar las reglas de firewall para permitir los puertos 8080 y 80.

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

Vuelva a cargar las zonas de cortafuegos ejecutando:

firewall-cmd --reload

Configure SELinux para la configuración del proxy nginx ejecutando el siguiente comando.

setsebool httpd_can_network_connect 1 -P

Configurar Jenkins

Ahora puede acceder a la interfaz web del servidor Jenkins CI yendo a la siguiente dirección web.

http://ci.yourdomain.com

Reemplace ci.yourdomain.com con su dominio real. Verá la siguiente interfaz.

Le pedirá su contraseña de administrador inicial, que genera el instalador y se almacena en el archivo /var/lib/jenkins/secrets/initialAdminPassword. Ejecute el siguiente comando para obtener la contraseña de administrador inicial.

cat /var/lib/jenkins/secrets/initialAdminPassword

Use la contraseña para iniciar sesión y continúe.

En la siguiente sección, se le preguntará qué complementos desea instalar; para los principiantes, se recomienda elegir Instalar complementos sugeridos .

Esto instalará todos los complementos necesarios para comenzar.

En la siguiente interfaz, instalará los complementos.

Ahora deberá crear un usuario administrador para su panel de administración de Jenkins.

Finalmente, se le llevará al panel administrativo de Jenkins.

Conclusión

Ahora puede usar Jenkins para la integración continua en el desarrollo de software. Puede obtener más información sobre Jenkins visitando el sitio web de Jenkins.


Cent OS
  1. Cómo instalar WordPress con Nginx en CentOS 7

  2. Cómo instalar phpMyAdmin con Nginx en CentOS 7

  3. Cómo instalar Nginx en CentOS 8

  4. Cómo instalar phpMyAdmin con Nginx en CentOS 7 / RHEL 7

  5. Cómo instalar WordPress con LEMP Stack en CentOS 8

Cómo instalar Nginx con ngx_pagespeed en CentOS

Cómo instalar Nginx con PHP-FastCGI en CentOS 6

Cómo instalar Magento con Nginx en CentOS 7

Cómo instalar Nginx en CentOS 6

Cómo instalar LetsEncrypt SSL con Nginx en CentOS 6

Cómo instalar Nginx en CentOS 7