Selectel→ original

Selectel explica cómo instalar Jenkins en un servidor en la nube: de los recursos al pipeline

Un desarrollador frontend de Selectel ha publicado en Habr una guía práctica para instalar Jenkins en un servidor virtual en la nube. El autor explica qué recursos necesita la herramienta según el escenario, cómo contratar el servidor en el panel de Selectel, prepararlo, instalar Jenkins y configurarlo. Al final se crea un pipeline sencillo para la compilación automática de una aplicación. Jenkins sigue siendo un servidor de automatización open source e independiente de la plataforma: funciona con cualquier repositorio Git, ejecuta pruebas, compila imágenes Docker y despliega aplicaciones. • Jenkins no está atado a un alojamiento de código concreto. • Se amplía con plugins para prácticamente cualquier stack. • El material está pensado para quienes están cansados de las compilaciones y los despliegues manuales.

Procesado por IA desde Selectel; editado por Hamidun News
Selectel explica cómo instalar Jenkins en un servidor en la nube: de los recursos al pipeline
Fuente: Selectel. Collage: Hamidun News.
◐ Escuchar artículo

La compilación y el despliegue manuales dejan de funcionar cuando el proyecto crece más rápido que el equipo. Cada cambio en la base de código arrastra los mismos pasos: compilar, ejecutar las pruebas, desplegar. Cuantas más veces se repiten, mayor es la probabilidad de error. El desarrollador frontend de Selectel Zavur ha publicado en Habr una guía para resolver este problema con Jenkins en un servidor virtual en la nube: desde la elección de recursos hasta un pipeline en funcionamiento.

El material salió en el blog corporativo de Selectel, y el servidor se contrata en el panel de este proveedor. Pero el esquema en sí casi no depende del proveedor. Se puede trasladar a cualquier máquina virtual con Linux.

Por qué Jenkins y no el CI integrado

GitHub Actions y GitLab CI tienen una ventaja evidente: viven junto al repositorio. El precio a pagar es la dependencia de la plataforma. Jenkins funciona de otra manera. Es un servidor de automatización open source independiente, que descarga el código de cualquier repositorio Git y no se preocupa de dónde esté alojado.

El proyecto tiene una larga historia. Nació en 2011 como una bifurcación de Hudson y desde entonces ha desarrollado un ecosistema de más de 1800 plugins. A través de ellos se conectan sistemas de compilación, escáneres de código, notificaciones a mensajeros y API en la nube. Para equipos con un stack mixto o un entorno cerrado, este suele ser el argumento decisivo.

Según la descripción del autor, Jenkins puede:

  • compilar proyectos desde cualquier repositorio Git;
  • ejecutar pruebas automáticas;
  • compilar imágenes Docker;
  • desplegar aplicaciones en los servidores de destino.

Qué incluye la guía

El artículo sigue el orden habitual en que se levanta un servidor de CI:

  • estimación de recursos para distintos escenarios, desde un proyecto pequeño hasta compilaciones con mucha carga;
  • contratación de un servidor virtual en el panel de Selectel;
  • preparación del sistema para la instalación;
  • instalación y configuración inicial de Jenkins;
  • un pipeline sencillo para la compilación automática de una aplicación.

El análisis de recursos es más útil de lo que parece. Jenkins está escrito en Java y, en la documentación del proyecto, para equipos pequeños se recomiendan desde 4 GB de memoria RAM y unos 10 GB de disco. Un mínimo de 256 MB solo sirve para experimentar. Las compilaciones con Docker y las pruebas pesadas elevan los requisitos de procesador y disco. Si se ahorra en el servidor, el pipeline fallará por falta de memoria en el peor momento. El anuncio no recoge las cifras de la propia guía, así que conviene consultar el texto completo del artículo.

Dónde están las trampas

Instalar Jenkins lleva unos pocos minutos. Los problemas empiezan después. Las versiones actuales requieren una versión vigente de Java (17 o 21), y la interfaz web se abre por defecto en el puerto 8080 sin HTTPS. Si se deja así, el servidor queda accesible para cualquiera que conozca su dirección. Los plugins también hay que actualizarlos: es precisamente a través de ellos como se corrigen con regularidad las vulnerabilidades.

Otra trampa es el almacenamiento de la configuración. Un pipeline montado a base de clics en la interfaz no se puede revisar ni revertir. Por eso es mejor describirlo en un Jenkinsfile y mantenerlo en el repositorio junto al código.

Qué hacer con esto en la práctica

Para un equipo de unas pocas personas, esta combinación cubre la necesidad básica de CI/CD sin infraestructura superflua. El orden de acciones es razonable:

  • empezar con un servidor pequeño y vigilar la memoria durante las compilaciones;
  • proteger el acceso a la interfaz con HTTPS y una restricción por IP o VPN;
  • describir el pipeline en un Jenkinsfile y guardarlo en Git;
  • trasladar las compilaciones pesadas a agentes independientes cuando un solo servidor deje de dar abasto.

El material no trata de IA ni de un nuevo lanzamiento. Es una instrucción aplicada, útil para ingenieros DevOps principiantes y desarrolladores frontend que quieren dejar de desplegar a mano. Cualquier asistente de IA moderno para programar acaba topándose con la misma pregunta: dónde y cómo desplegar el resultado. Sin compilación y pruebas automáticas, toda la velocidad de generación de código se pierde enseguida en la revisión manual.

ZK
Hamidun News
Noticias de AI sin ruido. Selección editorial diaria de más de 50 fuentes. Producto de Zhemal Khamidun, Head of AI en Alpina Digital.
✦ Unified AI Workspace

Access Frontier LLMs & Multimodal AI in One Workspace

Discover NomadNet AI (nomadnet.ai) — unified access to frontier language models, research synthesis, and multimodal workflows.

Try NomadNet AI →Launch NomadNet Agent
¿Qué te parece?
Cargando comentarios…