Crear un sitio web estático con la salida de compilación alojada en un bucket de S3 - AWS CodeBuild

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Crear un sitio web estático con la salida de compilación alojada en un bucket de S3

Puede deshabilitar el cifrado de los artefactos en una compilación, por ejemplo, para publicar artefactos en una ubicación configurada para alojar un sitio web. (Los artefactos cifrados no se pueden publicar). En este ejemplo, se muestra cómo utilizar los webhooks para desencadenar una compilación y publicar sus artefactos en un bucket de S3 configurado como un sitio web.

  1. Siga las instrucciones de configuración para sitio web estático si quiere configurar un bucket de S3 para que funcione como un sitio web.

  2. Abra laAWS CodeBuild consola en https://console.aws.amazon.com/codesuite/codebuild/home.

  3. Si aparece una página de CodeBuild información, seleccione Crear proyecto de construcción. De lo contrario, en el panel de navegación, expanda Crear, elija Crear proyectos y, a continuación, elija Crear proyecto de creación.

  4. En Project name (Nombre de proyecto), escriba un nombre para este proyecto de compilación. Los nombres de los proyectos de compilación debe ser únicos en cada cuenta de AWS. También puedes incluir una descripción opcional del proyecto de compilación para ayudar a otros usuarios a entender para qué se utiliza este proyecto.

  5. En Source (Código fuente), para Source provider (Proveedor de código fuente), elija GitHub. Siga las instrucciones para conectarse (o volver a conectarse) con y GitHub, a continuación, seleccione Autorizar.

    En Webhook, seleccione Rebuild every time a code change is pushed to this repository (Volver a compilar cada vez que un cambio de código se inserte en el repositorio). Solo puede seleccionar esta casilla de verificación si eligió Use a repository in my account (Usar un repositorio de mi cuenta).

  6. En Environment (Entorno):

    En Environment image (Imagen del entorno), realice alguna de las siguientes operaciones:

    • Para usar una imagen de Docker administrada por AWS CodeBuild, elija Managed image (Imagen administrada) y después elija una opción en Operating system (Sistema operativo), Runtime (Tiempo de ejecución), Image (Imagen) e Image version (Versión de imagen). Realice una selección en Environment type (Tipo de entorno) si está disponible.

    • Para usar otra imagen de Docker, elija Custom image (Imagen personalizada). Para el tipo de entorno, elija ARM, Linux, GPU Linux o Windows. Si elige Other registry (Otro registro), para External registry URL (URL de registro externo), introduzca el nombre y etiqueta de la imagen de Docker en Docker Hub, usando el formato docker repository/docker image name. Si elige Amazon ECR, utilice el repositorio de Amazon ECR y la imagen de Amazon ECR para elegir la imagen de Docker en suAWS cuenta.

    • Para usar una imagen privada de Docker, selecciona Imagen personalizada. Para el tipo de entorno, elija ARM, Linux, GPU Linux o Windows. En Image registry (Registro de imagen), elija Other registry (Otro registro) y, a continuación, introduzca el ARN de las credenciales para su imagen de Docker privada. Secrets Manager debe crear las credenciales. Para obtener más información, consulte ¿Qué es AWS Secrets Manager? en la Guía del usuario de AWS Secrets Manager.

  7. En Service role (Rol de servicio), realice una de las operaciones siguientes:

    • Si no tiene un rol CodeBuild de servicio, elija Nuevo rol de servicio. Escriba un nombre para el nuevo rol en el campo Role Name.

    • Si tiene un rol CodeBuild de servicio, elija Función de servicio existente. En Role ARN, elija el rol de servicio.

    nota

    Cuando utiliza la consola de para crear o actualizar un proyecto de compilación, puede crear un rol de CodeBuild servicio al mismo tiempo. De forma predeterminada, el rol funciona solamente con ese proyecto de compilación. Si utiliza la consola para asociar este rol de servicio a otro proyecto de compilación, el rol se actualizará para que funcione con el otro proyecto de compilación. Un rol de servicio puede funcionar con hasta diez proyectos de compilación.

  8. En Buildspec, lleve a cabo una de las siguientes operaciones:

    • Elija Usar un archivo buildspec para usar el archivo buildspec.yml en el directorio raíz del código fuente.

    • Elija Insertar comandos de compilación para usar la consola para insertar comandos de compilación.

    Para obtener más información, consulte Referencia de la especificación de compilación.

  9. En Artifacts, para Type, elija Amazon S3 para almacenar el resultado de la compilación en un bucket de S3.

  10. En Bucket name (Nombre del bucket), elija el nombre del bucket de S3 que ha configurado para que funcione como un sitio web en el paso 1.

  11. Si eligió Insert build commands (Insertar comandos de compilación) en Environment: How to build (Entorno: cómo compilar), escriba las ubicaciones de los archivos de la compilación que desea incluir en el bucket de salida en Output files (Archivos de salida). Si tiene varias ubicaciones, utilice una coma para separarlas (por ejemplo, appspec.yml, target/my-app.jar). Para obtener más información, consulte Artifacts reference-key in the buildspec file.

  12. Seleccione Disable artifacts encryption (Deshabilitar cifrado de artefactos).

  13. Expanda Additional configuration (Configuración adicional) y elija las opciones que correspondan.

  14. Elija Create build project (Crear proyecto de compilación). En la página del proyecto de compilación, en Build history (Historial de compilaciones), elija Start build (Comenzar compilación) para ejecutar la compilación.

  15. (Opcional) Siga las instrucciones del ejemplo: acelere su sitio web con Amazon CloudFront en la Guía para desarrolladores de Amazon S3.