Empaquetar e implementar automáticamente el entorno Tomcat basado en Jenkins

Tabla de contenido

1. Configurar el host git

2. Configurar el host jenkins

3. Configurar el servidor web

4. Crea un nuevo proyecto Maven

5. Verifique los resultados de implementación y empaquetado automático de Jenkins


El principio de funcionamiento de Jenkins es copiar primero el código fuente del sistema de control de versiones SVN/Git al local y luego llamar a Maven para compilarlo de acuerdo con el script establecido. La clave de todo el sistema es el script de compilación, que le indica a Jenkins las tareas que deben realizarse en una integración.

 

ambiente de laboratorio

Sistema operativo

dirección IP

nombre de la CPU

Role

CentOS 7.5

192.168.200.111

git

servidor git

CentOS 7.5

192.168.200.112

Cliente git de Jenkins

servidor jenkins

CentOS 7.5

192.168.200.113

gato

Servidor web

Apague el firewall y selinux en todos los hosts

[root@localhost ~]# systemctl detener firewalld

[raíz@localhost ~]# iptables -F

[root@localhost ~]# setenforce 0

1. Configurar el host git


# dependencias de instalación de instalación rpm: tanto 1 como 2 están instalados

[root@gitclient ~]# yum -y install curl-devel expat-devel gettext-devel openssl-devel zlib-devel     [Es posible que falten algunas dependencias, como c++, que se puede instalar según sea necesario]

 

# Compile e instale: servidor y cliente, visite https://mirrors.edge.kernel.org/pub/software/scm/git/ para descargar la versión requerida

Primero rz importa el paquete git2.22

[root@gitclient ~]# tar xf git-2.22.0.tar.gz -C /usr/src/

[root@gitclient ~]# cd /usr/src/git-2.22.0/

[root@git git-2.22.0]# make configure [Este paso puede solicitar el siguiente yum -y install para instalarlo]

[root@git git-2.22.0]# yum -y install gcc-c++ [Instalar dependencias de c++]

[root@git git-2.22.0]# ./configure --prefix=/usr/local/git && make && make install

[root@git git-2.22.0]# ln -sf /usr/local/git/bin/git /usr/bin/

[root@git git-2.22.0]# git --versión

 

#Configurar usuarios en el servidor git [primero]

[root@git ~]# usuarioadd git

[root@git ~]# echo "123456" | contraseña --stdin git

[root@git ~]# echo "123456" | contraseña --stdin git

Crear una sonda de almacén local

[raíz@git ~]# su - git

Último inicio de sesión: jueves 20 de junio 09:46:10 CST 2019pts/0

[git@git ~]$ mkdir sonda.git

[git@git ~]$ cd sonda.git

[git@git probe.git]$ git --bare init

Inicialice un repositorio Git vacío en /home/git/probe.git/

[git@git probe.git]$ salir

[root@git ~]# rz #Subir psi-probe.tar.gz

 

[root@git ~]# tar xf psi-probe.tar.gz

[root@git ~]# git clone [email protected]:/home/git/probe.git

[root@git ~]# cp -rf psi-probe/* sonda/

[root@git ~]# sonda cd/

[sonda raíz@git]# git add.

[root@git probe]# git config --global user.email "[email protected]"

[root@git probe]# git config --global nombre.usuario "jialiang"

[root@git probe]# git commit -m "toda la sonda"

[root@git probe]# maestro de origen de git push

2. Configurar el host jenkins


Agregar credenciales de verificación: Puede agregar las credenciales aquí o no. Esta prueba no involucra credenciales.

 

 "Agregar credenciales".

 

 

 Después de completar los datos anteriores, haga clic en "Aceptar" para ver la cuenta de servidor web remoto recién agregada.

 

 

Agregar publicación sobre host remoto SSH

Haga clic en "Administrar Jenkins" -> "Configurar sistema" -> "Publicar a través de SSH" -> "Servidores SSH" -> botón de opción "Agregar" en la página de inicio de Jenkins para agregar un host remoto SSH. Como se muestra en la Figura 3.13, después de ingresar la información necesaria como nombre, nombre de host, nombre de usuario, etc., haga clic en el botón de opción "Avanzado" -> Marque la opción "Usar autenticación con contraseña o use una clave diferente" -> Ingrese el botón "Remoto". contraseña de inicio de sesión del host" -> "Configuración de prueba" prueba la configuración del host remoto. Después de probar con éxito la configuración del host remoto, haga clic en el botón "Guardar".

 

 

 

 

Configurar entornos Maven, JDK y Git

En la página de inicio de Jenkins, haga clic en "Administrar Jenkins" -> "Configuración global de herramientas" -> "JDK" -> Agregar "JDK" y establezca el alias de JDK en "JDK1 7 " . Elimine la opción "Instalar automáticamente" y configure "JAVA_HOME" en la ruta de instalación real del JDK en este caso.

/usr/local/java

 

 

 

 

 

Instalar maven en Jenkins

 [root@jenkins ~]# tar xf apache-maven-3.5.0-bin.tar.gz

[root@jenkins ~]# mv apache-maven-3.5.0 /usr/local/maven-3.5.0

Cambiar la estación espejo de Alibaba Cloud para maven

[root@jenkins ~]# vim /usr/local/maven-3.5.0/conf/settings.xml

#Elimine todo en los dos <espejos>, aproximadamente 12 líneas, y agregue la siguiente estación espejo de Alibaba Cloud a los dos <espejos>

    <espejo>

        <id>nexo-aliyun</id>

        <mirrorOf>central</mirrorOf>

        <nombre>Nexus aliyun</nombre>

        <url>http://maven.aliyun.com/nexus/content/groups/public</url>

</espejo>

efecto final 

 

 

Busque la opción de configuración de Maven en la interfaz de configuración "Configuración global de herramientas", luego haga clic en "Agregar Maven" y establezca el alias en "Maven3.5".

 

configuración de git

[root@jenkins ~]# cuál git

/usr/bin/git

 

Una vez completada la configuración básica global anterior, haga clic en Guardar para completar.

3. Configurar el servidor web


[root@tomcat ~]# tar xf apache-tomcat-8.5.40.tar.gz

[root@tomcat ~]# tar xf jdk-8u191-linux-x64.tar.gz

[ root @ tomcat ~ ] # mv jdk1 .8.0_191 // usr / local / java

[root@tomcat ~]# mv apache-tomcat-8.5.40 /usr/local/tomcat

[raíz@tomcat ~]# vim /etc/profile

exportar JAVA_HOME=/usr/local/java/

exportar CLASSPATH=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar

exportar RUTA=$JAVA_HOME/bin:$RUTA

 

[root@tomcat ~]# fuente /etc/profile

[root@tomcat ~]# java -versión

versión de Java "1.8.0_191"

Entorno de ejecución Java(TM) SE (compilación 1.8.0_191-b12)

Máquina virtual de servidor Java HotSpot(TM) de 64 bits (compilación 25.191-b12, modo mixto)

Publicar la clave pública en el host jenkins

[root@tomcat ~]# ssh-keygen

[root@tomcat ~]# ssh-copia-id 192.168.200.112

 

[Volver a jenkins]

El host Jenkins usa el usuario jenkins para conectarse a git de manera predeterminada, así que use el usuario jenkins para generar un par de claves y enviarlo a git.

[raíz@jenkins ~]# id jenkins

uid=988(jenkins) gid=982(jenkins) grupo=982(jenkins)

 

[root@jenkins ~]# su -s /bin/bash jenkins

bash-4.2$ ssh-keygen

bash-4.2$ ssh-copia-id [email protected]

bash-4.2$ ssh [email protected]             #Prueba de inicio de sesión

bash-4.2$ salir

[raíz@jenkins ~]# ssh-keygen

[root@jenkins ~]# ssh-copy-id [email protected]

[root@jenkins ~]# ssh [email protected]              #Prueba de inicio de sesión

 

4. Crea un nuevo proyecto Maven


Una vez completada la configuración anterior, regrese a la página de inicio de Jenkins, seleccione "Nueva tarea", luego ingrese el nombre de la tarea "sonda", seleccione "Proyecto Maven" y haga clic en el botón "Aceptar" en la parte inferior de la página actual.

 

 

Después de hacer clic en el botón "Aceptar", seleccione "Administración de código fuente", seleccione "Git" y configure "RepositoriesURL" como

[email protected]. 200.111 :/home/git/probe.git

 

 

Seleccione "Construir"

paquete limpio -Dmaven.test.skip=true

 

Seleccione "enviar artefactos de compilación a través de SSH" en "Operaciones posteriores a la compilación". El significado de ejecutar el comando en el "comando Exec" es: finalizar el proceso Tomcat antes de la implementación automática, luego eliminar el paquete war y usar el comando de copia remota scp. Para empaquetar automáticamente Jenkins, copie el paquete de guerra del buen proyecto en el directorio actual de la aplicación Tomcat. Luego reinicie Tomcat.

 

scp 192.168.200.112:/root/.jenkins/workspace/probe/psi-probe-web/target/probe.war /usr/local/tomcat/webapps/

/usr/local/tomcat/bin/startup.sh

 

Una vez completadas todas las configuraciones anteriores, haga clic en Guardar. Luego haga clic en la "sonda" -> "Construir ahora" que acaba de crear hasta que se construya el proyecto. El proceso de construcción se puede ver en la "Salida de la consola".

 

 

 

5. Verifique los resultados de implementación y empaquetado automático de Jenkins


Compruebe en el servidor web si el directorio de la sonda está copiado en el directorio /usr/local/tomcat/webapps.

[root@tomcat ~]# ls /usr/local/tomcat/webapps/

[root@tomcat ~]# ls /usr/local/tomcat/webapps/probe -l

 A juzgar por los resultados anteriores, Jenkins ha copiado el paquete de guerra de sondas preparado.

Se puede ver en el comando de ejecución después de la compilación que Tomcat se ha reiniciado y se accede al sistema de monitoreo de la sonda de prueba a través del navegador. http://192.168.200.113:8080/sonda .

 

[root@tomcat ~]# vim /usr/local/tomcat/conf/tomcat-users.xml

  <rol nombre de rol="administrador-gui"/>

  <rol nombre de rol="admin-gui"/>

  <usuario nombre de usuario="tomcat" contraseña="tomcat" roles="manager-gui,admin-gui"/>

</tomcat-users> # Agregue las tres líneas anteriores antes de esta línea

 

[root@tomcat ~]# vim /usr/local/tomcat/webapps/manager/META-INF/context.xml

<!-- <Valve className="org.apache.catalina.valves.RemoteAddrValve"

         permitir="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" /> -->

Comenta lo anterior

 

[root@tomcat ~]# /usr/local/tomcat/bin/shutdown.sh

[root@tomcat ~]# /usr/local/tomcat/bin/startup.sh

 

 En este punto, se completa el empaquetado y la implementación automáticos de Jenkins.

Supongo que te gusta

Origin blog.csdn.net/2302_77750172/article/details/132426244
Recomendado
Clasificación