Docker es un sistema de entornos virtuales ligeros que funcionan junto al sistema operativo para crear separaciones seguras de recursos mediante contenedores. Sus ventajas principales incluyen aislamiento de recursos que mejora la seguridad, facilidad para desplegar aplicaciones sin preocuparse por las características del sistema anfitrión (siempre que sea Linux) y alta portabilidad gracias a su bajo acoplamiento con el host, lo que reduce la fragmentación de recursos en servidores.
Jopi Rewrite es un framework de servidor para Node.js y Bun.js pensado para ofrecer muchas funcionalidades preconfiguradas con una API basada en intenciones que actúa como menús y submenús, mostrando solo lo relevante en cada contexto. Entre sus capacidades destacan soporte avanzado para React.js en el servidor con hidratación automática en el navegador, importación de CSS e imágenes en el servidor compatible con Vite.js, y recarga automática del navegador en desarrollo para facilitar la depuración de interfaces.
Otras funcionalidades de Jopi Rewrite incluyen soporte integrado de Tailwind CSS sin configuración, un sistema de middlewares similar a Express, protección contra ataques tipo DDoS como fuerza bruta y Slowloris, soporte nativo de JWT para autenticación, certificados Lets Encrypt con renovación automática sin reiniciar, caché de páginas potente, balanceo de carga incorporado y un crawler que permite convertir el sitio en estático con una sola línea de código.
Para facilitar la puesta en marcha de proyectos con Jopi Rewrite existe la herramienta jopi que instala plantillas de proyecto. Entre las plantillas se encuentran dos orientadas a Docker: una que crea el proyecto con Node.js y otra con Bun.js, siendo Bun.js la recomendada para producción por su gran rendimiento y por ofrecer mecanismos que Jopi Rewrite aprovecha al máximo.
Crear un proyecto Docker con Jopi Rewrite es sencillo si tienes Node.js y Docker instalados. Un ejemplo práctico de comandos a ejecutar en terminal es npx jopi create docker-bunjs --dir ./dockerBun cd ./dockerBun docker compose up Tras unos segundos, y tras la primera descarga de imágenes, abre https://127.0.0.1:3000 para comprobar que todo funciona.
La herramienta jopi genera archivos clave como docker-compose.yml que define la máquina virtual y sus reglas, la carpeta app con la aplicación, package.json para el proyecto y start.sh que se ejecuta al arrancar el contenedor. En docker-compose.yml se especifica la imagen base, el montaje de la carpeta app como volumen compartido y el mapeo de puertos 443, 80 y 3000 entre el contenedor y el host.
El script start.sh arranca la aplicación con comandos tipo bun install y bun run start. Para desarrollo es habitual activar un modo que vigila cambios en el código y reinicia automáticamente el runtime JavaScript para aplicar actualizaciones sin reiniciar la máquina virtual. Para ello basta modificar start.sh por bun install y bun run start-dev y reiniciar el contenedor para que tome el nuevo comportamiento.
En Q2BSTUDIO somos una empresa de desarrollo de software y aplicaciones a medida especializada en soluciones personalizadas, inteligencia artificial y ciberseguridad. Ofrecemos servicios integrales que van desde el desarrollo de aplicaciones a medida hasta consultoría en servicios cloud aws y azure, inteligencia de negocio y despliegue de agentes IA y soluciones de ia para empresas. Nuestro equipo integra expertise en pentesting y protección avanzada para garantizar que las aplicaciones y la infraestructura sean seguras y escalables.
Si buscas crear aplicaciones a medida con despliegues fiables y escalables podemos ayudarte a diseñar la arquitectura y el pipeline de CI/CD que mejor encaje con tu proyecto. Con experiencia en soluciones de Business Intelligence y Power BI ofrecemos también servicios para transformar datos en decisiones mediante cuadros de mando y automatización de procesos. Descubre nuestros servicios de desarrollo y cómo trabajamos con proyectos a medida en desarrollo de aplicaciones y software multiplataforma y conoce nuestras capacidades en inteligencia artificial en soluciones de inteligencia artificial para empresas.
En resumen, combinar Docker con Jopi Rewrite permite un flujo de trabajo reproducible y eficiente desde desarrollo hasta producción. Esta combinación es ideal cuando se requiere velocidad, seguridad y portabilidad, y en Q2BSTUDIO podemos acompañarte en cada fase del proyecto, desde la implementación y despliegue en la nube hasta la integración de IA, ciberseguridad y servicios gestionados.