Día 23: Freestyle de Jenkins para DevOps

Guía para automatizar builds, pruebas y despliegues con Jenkins y Docker: CI/CD, Freestyle Projects, Docker Compose y pipelines seguros para tus proyectos.

18 ago 2025 • 5 min de lectura • Equipo Q2BSTUDIO

Inteligencia-Artificial-

Bienvenido a tu espacio para automatizar compilaciones pruebas y despliegues con Jenkins y Docker. Aquí descubrirás cómo implementar CI CD para mantener el desarrollo rápido fiable y eficiente.

CI CD explicado: CI Integración Continua integra automáticamente los cambios en un repositorio compartido y ejecuta compilaciones y pruebas para detectar errores temprano. CD Entrega Continua mantiene el código en un estado listo para liberación con despliegues automatizados a staging o producción.

Qué es un build job En Jenkins un build job es un conjunto de instrucciones para automatizar tareas desde compilar código ejecutar pruebas empaquetar hasta desplegar en cualquier entorno.

Qué es un Freestyle Project Un Freestyle Project en Jenkins es la forma más accesible para construir y probar código ejecutar comandos Docker desplegar aplicaciones y encadenar varios pasos de automatización.

Retos de hoy Task 1 Crear un agente para tu aplicación dockerizada Crear un Freestyle Project en Jenkins Añadir un paso de build que ejecute docker build para crear la imagen y docker run para lanzar el contenedor

Task 2 Crear un proyecto en Jenkins para ejecutar docker compose up -d y arrancar múltiples contenedores desde tu proyecto Añadir un paso de limpieza con docker compose down para detener y eliminar contenedores

Prerequisitos Confirmar que Jenkins está activo Abre la URL https://tu-host:8080 Desbloquea Jenkins con el contenido de sudo cat /var/lib/jenkins/secrets/initialAdminPassword Crea el usuario admin e instala los plugins sugeridos si es la primera vez

Dar acceso de Docker al usuario de Jenkins Ejecuta sudo usermod -aG docker jenkins y sudo systemctl restart jenkins Verifica con sudo -u jenkins -H sh -c docker version && docker ps

Instalar Git y Compose en el agente o host Ejecuta sudo apt-get update y sudo apt-get install -y git Si docker compose no está presente instala docker compose plugin con sudo apt-get install -y docker-compose-plugin

Crear o preparar un agente Si Jenkins y Docker comparten la misma máquina puedes usar el Built in Node Ve a Manage Jenkins Nodes Built in Node Configure Añade una etiqueta por ejemplo docker y establece el numero de ejecutores en 1 Guarda Si tienes un host Docker separado añádelo como agente SSH y asegúrate de que Docker está instalado allí

Task 1 Freestyle job para build y run Preparar el repositorio Asegúrate de que tu repo contiene un Dockerfile en la raiz por ejemplo my-app Dockerfile src ...

Crear el job Jenkins New Item Freestyle project nombra app-build-run OK En General marca Restrict where this project can be run y usa la etiqueta docker En Source Code Management selecciona Git y añade la URL del repo En Build Triggers configura Build periodically con el cron H * * * * para ejecutar cada hora

Paso de build Añade un Execute shell con un script similar en una sola linea set -e; APP_NAME=myapp; IMAGE=${APP_NAME}:${BUILD_NUMBER}; PORT=8080; echo [INFO] Building image ${IMAGE}; docker build -t ${IMAGE} .; echo [INFO] Stopping previous container if any; docker rm -f ${APP_NAME} 2>/dev/null || true; echo [INFO] Running new container; docker run -d --name ${APP_NAME} -p ${PORT}:${PORT} ${IMAGE}; echo [INFO] Container status:; docker ps --filter name=${APP_NAME}

Guarda y ejecuta Build Now Prueba la aplicación en https://tu-host:8080 o en el puerto mapeado

Task 2 Freestyle job para docker compose up -d y limpieza Asegura que tu repo incluye docker-compose.yml con los servicios necesarios por ejemplo un servicio web que construye desde . y expone 8080 y un servicio db con image postgres:16

Crear el job Jenkins New Item Freestyle project nombra compose-up OK Restringe a la etiqueta docker Configura Git con la URL de tu repo Opcionalmente añade un trigger Build periodically H/30 * * * *

Build step Si dispones de docker compose usa un Execute shell con set -e; FILE=docker-compose.yml; echo [INFO] Pull build y start en modo detached; docker compose -f ${FILE} up -d --build; echo [INFO] Current stack:; docker compose -f ${FILE} ps

Si solo tienes el binario antiguo usa docker-compose -f docker-compose.yml up -d --build y docker-compose -f docker-compose.yml ps

Cleanup para que siempre se ejecute incluso si falla el build usa un script con trampa set -e; FILE=docker-compose.yml; cleanup(){ echo [CLEANUP] Bringing stack down; docker compose -f ${FILE} down --volumes --remove-orphans; }; trap cleanup EXIT; docker compose -f ${FILE} up -d --build; docker compose -f ${FILE} ps; # aqui puedes añadir tus pruebas la limpieza se ejecutara en EXIT

Si quieres que la pila permanezca activa para pruebas manuales omite down aquí y crea un job compose-down con el comando docker compose -f docker-compose.yml down --volumes --remove-orphans

Repositorios privados Añade credenciales en Manage Jenkins Credentials System Global Add Credentials Elige Username with password o SSH Username with private key y referencia esas credenciales en la configuración Git del job

Verificacion final Añade un Execute shell al final con echo [VERIFY] Hitting health endpoint; curl -fsS https://localhost:8080/ || (echo App not responding && exit 1)

Consejos ejecuta ambos jobs revisa Console Output para confirmar cada etapa y ajusta puertos y nombres segun tu aplicación

Sobre Q2BSTUDIO Q2BSTUDIO es una empresa de desarrollo de software especializada en aplicaciones a medida y software a medida. Ofrecemos soluciones integrales en inteligencia artificial y ia para empresas, agentes IA implementacion de power bi y servicios inteligencia de negocio. Nuestra experiencia incluye ciberseguridad, servicios cloud aws y azure y consultoria para integrar agentes IA en procesos de negocio. Trabajamos proyectos desde prototipos hasta despliegues a produccion garantizando buenas practicas de seguridad y escalabilidad.

Palabras clave aplicables aplicaciones a medida software a medida inteligencia artificial ciberseguridad servicios cloud aws y azure servicios inteligencia de negocio ia para empresas agentes IA power bi

Si necesitas apoyo profesional Q2BSTUDIO puede ayudarte a diseñar pipelines CI CD optimizados crear jobs de Jenkins seguros y desplegar arquitecturas basadas en Docker y docker compose integrando inteligencia artificial y analitica con Power BI para maximizar el valor de tus datos.

¿UNA PAUSA?

Juega un momento antes de irte

NUESTROS SERVICIOS

Cómo podemos ayudarte

Inteligencia artificial

Agentes de IA, chatbots y asistentes inteligentes que automatizan tareas y atienden a tus clientes 24/7 para mejorar la eficiencia de tu negocio.

Más info

Desarrollo de software

Aplicaciones web, móviles y de escritorio, intranets, e-commerce, SaaS y plataformas de gestión diseñadas para las necesidades concretas de tu empresa.

Más info

Servicios cloud

Migración, infraestructura, hosting gestionado, alta disponibilidad y seguridad en Microsoft Azure y Amazon Web Services para que tu negocio escale sin límites.

Más info

Ciberseguridad y pentesting

Auditorías de seguridad, test de intrusión (pentesting) y protección de aplicaciones, datos e infraestructura on-premise y cloud, con hacking ético y cumplimiento normativo.

Más info

Business Intelligence

Cuadros de mando y análisis de datos con Power BI: integramos tus fuentes, diseñamos dashboards y KPIs y convertimos tus datos en decisiones.

Más info

Automatización de procesos

Automatizamos tareas repetitivas y conectamos tus aplicaciones con n8n, Power Automate, Make y RPA, eliminando trabajo manual y aumentando la productividad.

Más info

Formación para empresas

Formamos a tus equipos en tecnología con criterio: desarrollo web, bases de datos, Git, buenas prácticas y seguridad, automatización con n8n, inteligencia artificial para empresas y creación de soluciones de IA con Azure AI Foundry.

Más info

Auditoría de código

Auditamos el código que creas tú, tu equipo o una IA: te decimos qué está bien y qué mejorar, lo securizamos y lo dejamos listo para producción, web o app.

Más info

Generación de imágenes con IA

Creamos por ti las imágenes que necesita tu negocio con inteligencia artificial: producto, redes, publicidad, ilustración y avatares. Tú nos dices qué quieres y te lo entregamos listo para usar.

Más info

Generación de vídeos con IA

Creamos por ti vídeos con inteligencia artificial: promocionales, para redes, presentadores virtuales, doblaje y animaciones. Nos cuentas la idea y te lo entregamos montado y listo para publicar.

Más info

Avatares conversacionales con IA

Creamos avatares conversacionales con IA —humanos digitales con cara y voz— que atienden a tus clientes y equipos con el conocimiento de tu empresa, en tu web, monitores interactivos, WhatsApp o Teams.

Más info

Marketing Online e IA

Google Ads, Meta Ads, LinkedIn Ads y posicionamiento en motores de IA (GEO/AEO): captamos clientes y hacemos que tu marca aparezca donde te buscan, también en ChatGPT, Gemini y Perplexity.

Más info

¿Tienes un proyecto en mente?

Cuéntanos tu visión y la convertimos en una solución de software. Sea cual sea el alcance, hacemos realidad tu idea.

Live Chat