Conteneriza una aplicación Next.js
Esta guía te muestra cómo contenerizar una aplicación Next.js usando Docker, siguiendo las mejores prácticas para crear contenedores eficientes y listos para producción.
Next.js es un framework de React que permite el renderizado en el lado del servidor (server-side rendering), la generación de sitios estáticos (static site generation) y capacidades full-stack. Docker proporciona un entorno de contenedores consistente desde el desarrollo hasta la producción.
Agradecimiento
Docker expresa su sincero agradecimiento a Kristiyan Velkov por escribir esta guía y contribuir con los ejemplos oficiales de Docker para Next.js al repositorio de Vercel Next.js, incluyendo los ejemplos de salida standalone y export. Como Docker Captain e ingeniero experimentado, su experiencia en Docker, DevOps y desarrollo web moderno ha hecho que este recurso sea invaluable para la comunidad, ayudando a los desarrolladores a navegar y optimizar sus flujos de trabajo con Docker.
¿Qué aprenderás?
En esta guía, aprenderás a:
- Contenerizar y ejecutar una aplicación Next.js usando Docker.
- Configurar un entorno de desarrollo local para Next.js dentro de un contenedor.
- Ejecutar pruebas para tu aplicación Next.js dentro de un contenedor Docker.
- Configurar un flujo de trabajo (pipeline) de CI/CD usando GitHub Actions para tu aplicación contenerizada.
- Desplegar la aplicación Next.js contenerizada en un clúster de Kubernetes local para pruebas y depuración.
Para comenzar, empezarás contenerizando una aplicación Next.js existente.
Prerrequisitos
Antes de comenzar, asegúrate de estar familiarizado con lo siguiente:
- Comprensión básica de JavaScript o TypeScript.
- Conocimiento básico de Node.js y npm para gestionar dependencias y ejecutar scripts.
- Familiaridad con los conceptos fundamentales de React y Next.js.
- Comprensión de los conceptos de Docker, como imágenes, contenedores y Dockerfiles. Si eres nuevo en Docker, comienza con la guía de conceptos básicos de Docker.
Una vez que hayas completado los módulos de inicio de Next.js, estarás listo para contenerizar tu propia aplicación Next.js utilizando los ejemplos e instrucciones que se proporcionan en esta guía.
Módulos
- Conteneriza
Learn how to containerize a Next.js application with Docker by creating an optimized, production-ready image using best practices for performance, security, and scalability.
- Desarrolla tu aplicación
Aprende cómo desarrollar tu aplicación Next.js localmente usando contenedores.
- Ejecuta tus pruebas y lint
Aprende cómo ejecutar tus pruebas y lint de Next.js en un contenedor.
- Automatiza tus construcciones con GitHub Actions
Aprende cómo configurar CI/CD usando GitHub Actions para tu aplicación Next.js.
- Prueba tu despliegue
Aprende cómo realizar un despliegue local para probar y depurar tu despliegue en Kubernetes