Jenkins

Cómo instalar Jenkins con Docker en Ubuntu 18.04

Cómo instalar Jenkins con Docker en Ubuntu 18.04
Que es Docker? Docker es una herramienta de software gratuita y de código abierto que se puede utilizar para empaquetar, enviar y ejecutar cualquier aplicación como contenedor. No tiene ningún sistema de empaquetado o marcos, se puede ejecutar desde cualquier lugar, desde una computadora pequeña hasta grandes servidores. Puede implementar y escalar fácilmente sus aplicaciones, bases de datos y otros servicios sin depender de ningún proveedor.

Que es Jenkins? Jenkins es una herramienta de automatización de código abierto y gratuita que se puede utilizar para automatizar tareas técnicas repetitivas con la ayuda de la integración continua y la entrega continua.

En este tutorial, explicaremos cómo instalar Jenkins con Docker en Ubuntu 18.04 servidor. También explicaremos cómo ejecutar Jenkins con Docker para mantener la persistencia de las configuraciones y los datos de Jenkins.

Requisitos

Empezando

Comencemos a actualizar el repositorio de su servidor con la última versión. Puedes actualizarlo con el siguiente comando:

apt-get update -y
apt-get upgrade -y

Una vez que se haya actualizado el repositorio, reinicie su servidor para aplicar todos estos cambios.

Instalar Docker

A continuación, deberá instalar Docker en su servidor.

Primero, descargue y agregue la clave Docker CE GPG con el siguiente comando:

wget https: // descargar.estibador.com / linux / ubuntu / gpg
apt-key agregar gpg

A continuación, agregue el repositorio de Docker CE a APT con el siguiente comando:

nano / etc / apt / sources.lista.d / docker.lista

Agregue la siguiente línea:

deb [arch = amd64] https: // descargar.estibador.com / linux / ubuntu xenial estable

Guarde y cierre el archivo cuando haya terminado. Luego, actualice el repositorio con el siguiente comando:

apt-get update -y

Una vez que se actualice el repositorio, instale Docker CE con el siguiente comando:

apt-get install docker-ce -y

Después de instalar Docker CE, verifique la instalación de Docker con el siguiente comando:

ventana acoplable de estado systemctl

Crear volumen de Docker para datos y registro

El volumen de Docker es un método para conservar los datos y la configuración en los contenedores de Docker. Cuando elimina cualquier contenedor, los datos y las configuraciones siguen estando disponibles en el volumen de Docker. Por lo tanto, deberá crear volúmenes de datos y registros para hacer una copia de seguridad de los datos y configuraciones de Jenkins, incluidos registros, complementos, configuración de complementos y configuración de trabajos.

Comencemos con la creación de un volumen para los datos y el registro con el siguiente comando:

Docker volume crea jenkins-data
Docker volume crear jenkins-log

Una vez creados los volúmenes, puede enumerarlos con el siguiente comando:

docker volume ls

Debería ver el siguiente resultado:

NOMBRE DEL VOLUMEN DEL CONDUCTOR
datos-jenkins locales
jenkins-log local

Instalar Jenkins con Docker

A continuación, deberá crear un archivo de ventana acoplable para extraer y construir la imagen de Jenkins con la configuración requerida.

Puede crear un archivo docker con el siguiente comando:

ventana acoplable mkdir
nano docker / dockerfile

Agrega las siguientes líneas:

DE jenkins / jenkins
Mantenedor de LABEL = "[correo electrónico protegido]"
USUARIO root
EJECUTAR mkdir / var / log / jenkins
EJECUTAR mkdir / var / cache / jenkins
EJECUTAR chown -R jenkins: jenkins / var / log / jenkins
EJECUTAR chown -R jenkins: jenkins / var / cache / jenkins
USUARIO jenkins
 
ENV JAVA_OPTS = "- Xmx8192m"
ENV JENKINS_OPTS = "- handlerCountMax = 300 --logfile = / var / log / jenkins / jenkins.Iniciar sesión
--webroot = / var / cache / jenkins / war "

Guarde y cierre el archivo cuando haya terminado. Luego, cree la imagen de Jenkins con el siguiente comando:

ventana acoplable de cd
docker build -t myjenkins .

Debería ver el siguiente resultado:

Envío de contexto de compilación al demonio 2 de Docker.048kB
Paso 1/10: DE jenkins / jenkins
---> ae831925b271
Paso 2/10: mantenedor de LABEL = "[correo electrónico protegido]"
---> Ejecutando en 673bf1ecc3ea
Extracción del recipiente intermedio 673bf1ecc3ea
---> cad1bee88092
Paso 3/10: usuario root
---> Ejecutando en 36909c427d44
Extracción del contenedor intermedio 36909c427d44
---> 2c381cc3a773
Paso 4/10: EJECUTAR mkdir / var / log / jenkins
---> Ejecutando en 337c0310db99
Extracción del contenedor intermedio 337c0310db99
---> 5aa93b90c67e
Paso 5/10: EJECUTAR mkdir / var / cache / jenkins
---> Ejecutando en 2c77577ae28b
Extracción del recipiente intermedio 2c77577ae28b
---> 5016430c07eb
Paso 6/10: EJECUTAR chown -R jenkins: jenkins / var / log / jenkins
---> Ejecutando en e4c820f66103
Extracción del contenedor intermedio e4c820f66103
---> c8d2830a84c5
Paso 7/10: EJECUTAR chown -R jenkins: jenkins / var / cache / jenkins
---> Corriendo en d024606146d5
Desmontaje contenedor intermedio d024606146d5
---> a11d613cff18
Paso 8/10: USUARIO jenkins
---> Ejecutando en 478f3c067131
Extracción del contenedor intermedio 478f3c067131
---> edea568d5564
Paso 9/10: ENV JAVA_OPTS = "- Xmx8192m"
---> Ejecutando en 5ae52922f52b
Extracción del recipiente intermedio 5ae52922f52b
---> cb1285b1bc72
Paso 10/10: ENV JENKINS_OPTS = "- handlerCountMax = 300 --logfile = / var / log / jenkins / jenkins.Iniciar sesión
--webroot = / var / cache / jenkins / war "
---> Ejecutando en 973fb9257c29
Extracción del contenedor intermedio 973fb9257c29
---> b131c5adf03e
B131c5adf03e construido con éxito
Myjenkins etiquetado exitosamente: último

La nueva imagen de Jenkins con el nombre myjenkins se ha construido con éxito.

Ejecute Jenkins Container con datos y volumen de registro

La imagen de Jenkins ahora está construida con la configuración requerida. A continuación, deberá ejecutar el contenedor de Jenkins especificando los volúmenes de registro y datos como punto de montaje.

Puede ejecutar el contenedor de Jenkins con el siguiente comando:

Docker ejecutar -p 8080: 8080 -p 50000: 50000 --nombre = jenkins-master --mount source = jenkins-log,
destino = / var / log / jenkins --mount fuente = datos-jenkins, destino = / var / inicio_jenkins -d myjenkins

Una vez que se inicia el contenedor de Jenkins, puede verificar el contenedor en ejecución con el siguiente comando:

docker ps

Debería ver el siguiente resultado:

ESTADO CREADO DEL COMANDO DE IMAGEN ID DEL CONTENEDOR 
3dec02a7077c myjenkins "/ sbin / tini - / usr /…" Hace 6 minutos Hasta 6 minutos 
NOMBRES DE LOS PUERTOS
0.0.0.0: 8080-> 8080 / tcp, 0.0.0.0: 50000-> 50000 / tcp jenkins-master

A continuación, deberá verificar el archivo de registro de jenkins si todo está funcionando bien o no:

docker exec jenkins-master tail -f / var / log / jenkins / jenkins.Iniciar sesión

Debería ver el siguiente resultado:

Utilice la siguiente contraseña para continuar con la instalación:

b437ba21655a44cda66a75b8fbddf5b8
 
Esto también se puede encontrar en: / var / jenkins_home / secrets / initialAdminPassword
 
************************************************ ***********
************************************************ ***********
************************************************ ***********

Tenga en cuenta la contraseña anterior, la necesitará durante el asistente de configuración web de Jenkins.

Acceder a la interfaz web de Jenkins

Ahora, abra su navegador web y escriba la URL http: // ip-de-su-servidor: 8080. Se le redirigirá a la pantalla de configuración de Jenkins como se muestra a continuación:

Proporcione su contraseña de administrador y haga clic en el Continuar botón. Debería ver la siguiente página:

Ahora, haga clic en el "Instalar complementos sugeridos"Para instalar los complementos necesarios. Una vez finalizada la instalación. Debería ver la siguiente página:

Ahora, proporcione su nombre de usuario de administrador, contraseña y nombre completo y luego haga clic en el Ahorrar y Terminar botón. Debería ver la siguiente página:

Ahora, simplemente haga clic en el Guardar y finalizar botón. Una vez que la configuración se haya completado correctamente, debería ver la siguiente página:

Ahora, haga clic en el "Empiece a usar Jenkins". Se le redirigirá al panel de Jenkins como se muestra en la siguiente página:

Ahora, haga clic en "crear nuevos puestos de trabajo" botón. Debería ver la siguiente página:

Ahora, proporcione el nombre de su trabajo y haga clic en el OK botón. Debería ver la siguiente página:

Ahora, haga clic en el botón Guardar para ahorrar todos los ajustes. Debería ver sus trabajos recién creados en la siguiente página:

Pruebe los datos persistentes de Jenkins

Jenkins ahora está instalado y configurado. A continuación, deberá probar si los datos y el registro de Jenkins aún persisten después de eliminar el contenedor de Jenkins.

Para hacerlo, primero detenga y elimine el contenedor de Jenkins con el siguiente comando:

docker stop jenkins-master
docker rm jenkins-master

Ahora, inicie el contenedor de Jenkins nuevamente con el siguiente comando:

Docker ejecutar -p 8080: 8080 -p 50000: 50000 --nombre = jenkins-master --mount source = jenkins-log,
destino = / var / log / jenkins --mount fuente = datos-jenkins, destino = / var / inicio_jenkins -d myjenkins

Una vez que se haya iniciado el contenedor de Jenkins, abra su navegador web y escriba la URL http: // ip-de-su-servidor: 8080. Serás redirigido a la siguiente página:

Ahora, proporcione su nombre de usuario administrador y contraseña y luego haga clic en el Firmar en botón. Debería ver el panel de Jenkins en la siguiente página:

Eso significa que ha conservado todos los datos, registros, configuración de instalación e instalaciones de complementos. También deberías ver que tu trabajo myjenkins sigue ahí.

CONCLUSIÓN

Ahora puede contener su proceso devop con Jenkins y Docker, disfrute.

Cómo usar AutoKey para automatizar juegos de Linux
AutoKey es una utilidad de automatización de escritorio para Linux y X11, programada en Python 3, GTK y Qt. Usando su funcionalidad de scripting y MAC...
Cómo mostrar el contador de FPS en juegos de Linux
Los juegos de Linux obtuvieron un gran impulso cuando Valve anunció el soporte de Linux para el cliente Steam y sus juegos en 2012. Desde entonces, mu...
Cómo descargar y jugar Sid Meier's Civilization VI en Linux
Introducción al juego Civilization 6 es una versión moderna del concepto clásico introducido en la serie de juegos Age of Empires. La idea era bastant...