AWS Amplify Hosting
Servicio de hosting totalmente gestionado que automatiza el CI/CD y la distribución global por CDN de aplicaciones frontend mediante integración con repositorios Git
Descripción general
AWS Amplify Hosting es un servicio totalmente gestionado que construye y despliega automáticamente aplicaciones creadas con frameworks frontend como React, Next.js, Vue, Angular y Nuxt, utilizando un push a Git como disparador, y las distribuye a través de una CDN global basada en CloudFront. Soporta SSR (Server-Side Rendering), SSG (Static Site Generation) e ISR (Incremental Static Regeneration), e incluye de forma estándar la generación automática de entornos de vista previa y despliegues independientes por rama.
CI/CD basado en Git y configuración de build
Amplify Hosting se conecta a repositorios de GitHub, GitLab, Bitbucket y AWS CodeCommit, detectando pushes a ramas especificadas para ejecutar automáticamente el build y despliegue. La configuración de build se define en el archivo amplify.yml, describiendo las fases preBuild (instalación de dependencias), build (comando de build) y postBuild (post-procesamiento). La función de detección automática de frameworks estima los comandos de build apropiados para proyectos Next.js o Nuxt sin configuración adicional. Las variables de entorno pueden configurarse por rama, permitiendo usar diferentes endpoints de API o feature flags entre ramas de desarrollo y producción. También soporta configuraciones monorepo, permitiendo configurar builds que se disparan solo por cambios en directorios específicos. La personalización de la imagen de build permite adaptarse a proyectos que requieren versiones específicas de Node.js o bibliotecas del sistema.
Soporte SSR/ISR y ejecución en el edge
Al desplegar una aplicación SSR (Server-Side Rendering) de Next.js, Amplify construye automáticamente el entorno de ejecución del lado del servidor, renderizando páginas dinámicamente en cada solicitud. También soporta ISR (Incremental Static Regeneration), donde el mecanismo de regeneración de páginas generadas estáticamente en segundo plano funciona de forma transparente. Las API Routes y Middleware también funcionan en el entorno de ejecución de Amplify, permitiendo desplegar aplicaciones que aprovechan todas las funcionalidades de Next.js tal cual. La optimización de imágenes (next/image) también se ejecuta del lado del servidor, distribuyendo automáticamente imágenes en el tamaño y formato óptimos según el dispositivo. Los encabezados personalizados y las reglas de redirección pueden configurarse desde amplify.yml o la consola de Amplify, facilitando la adición de medidas SEO y encabezados de seguridad.
Entornos de vista previa y flujo de trabajo de desarrollo en equipo
Al habilitar la función de vista previa de pull requests, cada vez que se crea un PR se despliega automáticamente un entorno de vista previa independiente y se emite una URL única. Los revisores pueden verificar el funcionamiento real en la URL de vista previa, y tras el merge del PR, el entorno de vista previa se elimina automáticamente. Al estar integrado con la API de Checks de GitHub, el éxito o fracaso del build se muestra como un status check del PR. La función de configuración automática de subdominios por rama (develop.example.com, staging.example.com) simplifica la gestión de URLs por entorno. Se puede configurar restricción de acceso mediante autenticación Basic por rama, facilitando la operación de publicar entornos de staging solo para miembros internos. En la configuración de dominios personalizados, la integración con Route 53 automatiza la emisión de certificados SSL y la configuración de registros DNS.