

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.

# Utilizándolo AWS App Runner con AWS Toolkit for Visual Studio Code
<a name="using-apprunner"></a>

[AWS App Runner](https://docs.aws.amazon.com/apprunner/latest/dg/what-is-apprunner.html)proporciona una forma rápida, sencilla y rentable de implementar directamente desde el código fuente o una imagen de contenedor hasta una aplicación web escalable y segura en la AWS nube. Al usarlo, no necesita aprender nuevas tecnologías, decidir qué servicio de cómputo usar ni saber cómo aprovisionar y configurar AWS los recursos.

Puede utilizarlos AWS App Runner para crear y administrar servicios basados en una *imagen fuente* o un *código fuente*. Si utiliza una imagen de origen, puede elegir una imagen de contenedor pública o privada que se almacena en un repositorio de imágenes. App Runner es compatible con los siguientes proveedores de repositorios de imágenes:
+ Amazon Elastic Container Registry (Amazon ECR): almacena imágenes privadas en tu cuenta. AWS 
+ Amazon Elastic Container Registry Public (Amazon ECR Public): almacena imágenes de lectura pública.

 Si elige la opción de código fuente, puede implementarla desde un repositorio de código fuente mantenido por un proveedor de repositorios compatible. Actualmente, App Runner es compatible [GitHub](https://github.com/)como proveedor de repositorios de código fuente.

## Requisitos previos
<a name="apprunner-prereqs"></a>

Para interactuar con App Runner mediante el uso de lo, se AWS Toolkit for Visual Studio Code requiere lo siguiente:
+ Una AWS cuenta
+ Una versión de AWS Toolkit for Visual Studio Code esas características AWS App Runner

 Además de estos requisitos básicos, asegúrese de que todos los usuarios pertinentes de IAM tengan permisos para interactuar con el servicio de App Runner. También necesita obtener información específica sobre su fuente de servicio, como el URI de la imagen del contenedor o la conexión al GitHub repositorio. Necesitará esta información al crear el servicio de App Runner.

### Configuración de permisos de IAM para App Runner
<a name="app-runner-permissions"></a>

La forma más sencilla de conceder los permisos necesarios para App Runner consiste en adjuntar una política AWS gestionada existente a la entidad AWS Identity and Access Management (IAM) correspondiente, concretamente a un usuario o grupo. App Runner proporciona dos políticas administradas que puede adjuntar a los usuarios de IAM:
+ `AWSAppRunnerFullAccess`: permite a los usuarios realizar todas las acciones de App Runner.
+ `AWSAppRunnerReadOnlyAccess`: permite a los usuarios publicar y ver detalles sobre los recursos de App Runner. 

Además, si elige un repositorio privado de Amazon Elastic Container Registry (Amazon ECR) como origen de servicio, debe crear el siguiente rol de acceso para su servicio de App Runner:
+ `AWSAppRunnerServicePolicyForECRAccess`: permite a App Runner acceder a imágenes de Amazon Elastic Container Registry (Amazon ECR) de su cuenta.

Puede crear este rol automáticamente al configurar la instancia de servicio con la **paleta de comandos** de VS Code.

**nota**  
La función **AWSServiceRoleForAppRunner**vinculada al servicio permite AWS App Runner realizar las siguientes tareas:  
Envía los registros a los grupos de CloudWatch registros de Amazon Logs.
Crea reglas de Amazon CloudWatch Events para suscribirte al envío de imágenes de Amazon Elastic Container Registry (Amazon ECR).
No necesita crear manualmente el rol vinculado a servicios. Al crear una AWS App Runner en la API Consola de administración de AWS o mediante operaciones de API a las que se invoca AWS Toolkit for Visual Studio Code, AWS App Runner crea automáticamente esta función vinculada al servicio. 

Para obtener más información, consulte [Identity and access management for App Runner](https://docs.aws.amazon.com/apprunner/latest/dg/security-iam.html) (Administración de identidades y accesos para App Runner) en la *Guía para desarrolladores de AWS App Runner *.

### Obtención de orígenes de servicio para App Runner
<a name="app-runner-sources"></a>

Puedes usar AWS App Runner para implementar servicios desde una imagen fuente o un código fuente. 

------
#### [ Source image ]

Si vas a realizar la implementación desde una imagen de origen, puedes obtener un enlace al repositorio de esa imagen desde un registro de AWS imágenes público o privado. 
+ [Registro privado de Amazon ECR: copie el URI de un repositorio privado que utilice la consola de Amazon ECR en https://console.aws.amazon.com/ecr/ los repositorios.](https://console.aws.amazon.com/ecr/repositories) 
+ Registro público de Amazon ECR: copie el URI de un repositorio público que utiliza la Galería pública de Amazon ECR en [https://gallery.ecr.aws/](https://gallery.ecr.aws).

**nota**  
También puede obtener el URI de un repositorio privado de Amazon ECR directamente desde el **Explorador de AWS ** en el kit de herramientas para VS Code:  
Abra el **AWS Explorador** y expanda el nodo **ECR** para ver la lista de repositorios de esa región. AWS 
Haga clic con el botón derecho en un repositorio y elija **Copy Repository URI** (Copiar URI del repositorio) para copiar el enlace en el portapapeles.

Puede especificar el URI del repositorio de imágenes al configurar la instancia de servicio con la **paleta de comandos** de VS Code.

Para obtener más información, consulte [App Runner service based on a source image](https://docs.aws.amazon.com/apprunner/latest/dg/service-source-image.html) (Servicio de App Runner basado en una imagen de origen) en la *Guía para desarrolladores de AWS App Runner *.

------
#### [ Source code ]

Para que tu código fuente se despliegue en un AWS App Runner servicio, dicho código debe almacenarse en un repositorio de Git mantenido por un proveedor de repositorios compatible. App Runner admite un proveedor de repositorios de código fuente: [GitHub](https://github.com/).

Para obtener información sobre cómo configurar un GitHub repositorio, consulte la [documentación de introducción](https://docs.github.com/en/github/getting-started-with-github) en GitHub.

Para implementar el código fuente en un servicio de App Runner desde un GitHub repositorio, App Runner establece una conexión a GitHub. Si tu repositorio es privado (es decir, no es accesible públicamente en él GitHub), debes proporcionar a App Runner los detalles de conexión. 

**importante**  
Para crear GitHub conexiones, debes usar la consola de App Runner ([https://console.aws.amazon.com/apprunner](https://console.aws.amazon.com/apprunner)) para crear una conexión a la que se enlace. GitHub AWS**Puede seleccionar las conexiones que están disponibles en la página de **GitHubconexiones** al configurar su instancia de servicio con la paleta de comandos de VS Code.**  
Para obtener más información, consulte [Managing App Runner connections](https://docs.aws.amazon.com/apprunner/latest/dg/manage-connections.html) (Administración de conexiones de App Runner) en la *Guía para desarrolladores de AWS App Runner *.

La instancia de servicio de App Runner proporciona un tiempo de ejecución gestionado que permite compilar y ejecutar el código. AWS App Runner actualmente admite los siguientes tiempos de ejecución:
+ Tiempo de ejecución administrado de Python 
+ Tiempo de ejecución administrado de Node.js

Como parte de la configuración del servicio, proporciona información sobre cómo se crea e inicia el servicio de App Runner. Puede ingresar esta información mediante **Command Palette** (Paleta de comandos) o especificar un [archivo de configuración de App Runner](https://docs.aws.amazon.com/apprunner/latest/dg/config-file.html) con formato YAML. Los valores de este archivo le indican a App Runner cómo crear e iniciar el servicio y proporcionan contexto de tiempo de ejecución. Esto incluye la configuración de red y las variables de entorno correspondientes. El archivo de configuración se llama `apprunner.yaml`. Se agrega de manera automática al directorio raíz del repositorio de la aplicación.

 

------

## Precios
<a name="app-runner-pricing"></a>

Se le cobrará por los recursos informáticos y de memoria que utiliza la aplicación. Además, si automatiza las implementaciones, también pagará una tarifa mensual fija por cada aplicación que cubre todas las implementaciones automatizadas de ese mes. Si opta por implementar desde el código fuente, también pagará una tarifa de compilación por el tiempo que demora App Runner en crear un contenedor a partir del código fuente.

Para más información, consulte [Precios de AWS App Runner](https://aws.amazon.com/apprunner/pricing/).

**Topics**
+ [Requisitos previos](#apprunner-prereqs)
+ [Precios](#app-runner-pricing)
+ [Creación de servicios de App Runner](creating-service-apprunner.md)
+ [Administración de los servicios de App Runner](managing-service-apprunner.md)

# Creación de servicios de App Runner
<a name="creating-service-apprunner"></a>

Puede crear un servicio de App Runner en el kit de herramientas para VS Code mediante el **Explorador de AWS ** y la **paleta de comandos de VS Code**. Una vez que decida crear un servicio en una AWS región específica, los pasos numerados que se indican en la **paleta de comandos** le guiarán durante el proceso de configuración de la instancia de servicio en la que se ejecuta la aplicación. 

Antes de crear un servicio de App Runner, asegúrese de haber completado los [requisitos previos](using-apprunner.md#apprunner-prereqs). Esto incluye proporcionar los permisos de IAM pertinentes y confirmar el repositorio de origen específico que desea implementar.<a name="create-service"></a>

# Para crear un servicio de App Runner
<a name="create-service"></a>

1. Abra el AWS Explorador, si aún no está abierto.

1. Haga clic con el botón derecho en el nodo de **App Runner** y elija **Create Service** (Crear servicio).

   Se muestra la **paleta de comandos**.

1. En **Select a source code location type** (Seleccionar un tipo de ubicación de código fuente), elija **ECR** o **Repository** (Repositorio). 

   Si elige **ECR**, especifique una imagen de contenedor de un repositorio mantenido por Amazon Elastic Container Registry. Si elige **Repository** (Repositorio), especifique un repositorio de código fuente mantenido por un proveedor de repositorios compatible. Actualmente, App Runner es compatible [GitHub](https://github.com/)como proveedor de repositorios de código fuente. 

## Implementación desde ECR
<a name="deploying-from-ECR"></a>

1. En **Select or enter an image repository** (Seleccionar o ingresar un repositorio de imágenes), elija o ingrese la URL del repositorio de imágenes que mantiene su registro privado de Amazon ECR o la Galería pública de Amazon ECR.
**nota**  
Si especifica un repositorio de la Galería pública de Amazon ECR, asegúrese de que las implementaciones automáticas estén desactivadas, ya que App Runner no admite implementaciones automáticas para una imagen en un repositorio público de ECR.  
Las implementaciones automáticas están desactivadas de forma predeterminada. Esto se indica cuando el icono del encabezado de la **paleta de comandos** presenta una línea diagonal a través de él. Si eligió activar las implementaciones automáticas, un mensaje le informa que esta opción puede generar costos adicionales. 

1. Si en el paso de la **paleta de comandos** se informa de que **no se han encontrado etiquetas**, debe retroceder un paso y seleccionar un repositorio que contenga una imagen de contenedor etiquetada.

1. **Si utilizas un registro privado de Amazon ECR, necesitas el rol de acceso a ECR, Role, AppRunner ECRAccess que permite a App Runner acceder a las imágenes de Amazon Elastic Container Registry (Amazon ECR) de tu cuenta.** Elija el icono “\$1” en el encabezado de la **paleta de comandos** para crear automáticamente este rol. (No se requiere un rol de acceso si la imagen se almacena en la Galería pública de Amazon ECR, en el que las imágenes están disponibles públicamente). 

1. En **Port** (Puerto), ingrese el puerto IP utilizado por el servicio (por ejemplo, Puerto `8000`).

1. En **Configure environment variables** (Configurar variables de entorno), puede especificar un archivo que contenga variables de entorno que se utilizan para personalizar el comportamiento de la instancia de servicio. También puede omitir este paso.

1. En **Name your service** (Asignar un nombre al servicio), ingrese un nombre único sin espacios y pulse **Enter** (Intro).

1. En **Select instance configuration** (Seleccionar la configuración de instancia), elija una combinación de unidades de CPU y memoria en GB para la instancia de servicio.

   Cuando se crea el servicio, el estado cambia de **Creating** (Creando) a **Running** (En ejecución).

1.  Una vez que el servicio comience a ejecutarse, haga clic derecho en él y elija **Copy Service URL** (Copiar URL del servicio). 

1. Para acceder a la aplicación implementada, pegue la URL copiada en la barra de direcciones del navegador web. 

## Implementación desde un repositorio remoto
<a name="deploying-from-repository"></a>

1.  En **Seleccione una conexión, elija una conexión** a la que se enlace. GitHub AWS Las conexiones que están disponibles para su selección aparecen en la página de **GitHub conexiones** de la consola de App Runner. 

1.  En **Seleccione un GitHub repositorio remoto**, elija o introduzca una URL para el repositorio remoto.

    Los repositorios remotos que ya están configurados con la administración del control de origen (SCM) de Visual Studio Code están disponibles para su selección. También puede pegar un enlace al repositorio si no aparece en la lista.

1. En **Select a branch** (Seleccionar una rama), elija qué rama Git del código fuente desea implementar.

1. En **Choose configuration source** (Elegir el origen de configuración), especifique cómo desea definir la configuración del tiempo de ejecución.

   Si elige **Use configuration file** (Usar archivo de configuración), la instancia de servicio se configura mediante la configuración definida por el archivo de configuración de `apprunner.yaml`. Este archivo se encuentra en el directorio raíz del repositorio de la aplicación.

   Si elige **Configure todos los ajustes aquí**, utilice la **paleta de comandos** para especificar lo siguiente:
   + **Runtime** (Tiempo de ejecución): elija **Python 3** o **Nodejs 12**.
   + **Build command** (Comando de creación): ingrese el comando para crear la aplicación en el entorno en tiempo de ejecución de la instancia de servicio.
   + **Start command** (Comando de inicio): ingrese el comando para iniciar la aplicación en el entorno en tiempo de ejecución de la instancia de servicio.

1. En **Port** (Puerto), ingrese el puerto IP utilizado por el servicio (por ejemplo, Puerto `8000`).

1. En **Configure environment variables** (Configurar variables de entorno), puede especificar un archivo que contenga variables de entorno que se utilizan para personalizar el comportamiento de la instancia de servicio. También puede omitir este paso.

1. En **Name your service** (Asignar un nombre al servicio), ingrese un nombre único sin espacios y pulse **Enter** (Intro).

1. En **Select instance configuration** (Seleccionar la configuración de instancia), elija una combinación de unidades de CPU y memoria en GB para la instancia de servicio.

   Cuando se crea el servicio, el estado cambia de **Creating** (Creando) a **Running** (En ejecución).

1. Una vez que el servicio comience a ejecutarse, haga clic derecho en él y elija **Copy Service URL** (Copiar URL del servicio).

1. Para acceder a la aplicación implementada, pegue la URL copiada en la barra de direcciones del navegador web.

**nota**  
Si se produce un error en el intento de crear un servicio de App Runner, el servicio muestra un estado **Create failed** (Error al crear) en el **Explorador de AWS **. Para obtener sugerencias acerca de la solución de problemas, consulte [When service creation fails](https://docs.aws.amazon.com/apprunner/latest/dg/manage-create.html#manage-create.failure) (Cuando falla la creación del servicio) en la *Guía para desarrolladores de App Runner*.

# Administración de los servicios de App Runner
<a name="managing-service-apprunner"></a>

Tras crear un servicio de App Runner, puede administrarlo mediante el panel del AWS explorador para llevar a cabo las siguientes actividades:
+ [Pausa y reanudación de los servicios de App Runner](#pause-resume-apprunner)
+ [Implementación de los servicios de App Runner](#deploying-apprunner)
+ [Visualización de secuencias de registros para App Runner](#viewing-logs-apprunner)
+ [Eliminación de servicios de App Runner](#deleting-apprunner)

## Pausa y reanudación de los servicios de App Runner
<a name="pause-resume-apprunner"></a>

Si necesitas deshabilitar tu aplicación web temporalmente y detener la ejecución del código, puedes pausar el servicio AWS App Runner. App Runner reduce la capacidad de computación del servicio a cero. Cuando esté listo para volver a ejecutar la aplicación, reanude el servicio de App Runner. App Runner aprovisiona nueva capacidad de computación, implementa la aplicación en ella y la ejecuta.

**importante**  
Se le cobrará por App Runner solo cuando se esté ejecutando. Por lo tanto, puede pausar y reanudar la aplicación según sea necesario para administrar los costos. Esto resulta especialmente útil en escenarios de desarrollo y pruebas.<a name="pause-app-runner"></a>

## Para pausar el servicio de App Runner
<a name="pause-app-runner"></a>

1. Abre el AWS Explorador, si aún no está abierto.

1. Expanda **App Runner** para ver la lista de servicios.

1. Haga clic con el botón derecho en el servicio y elija **Pause** (Pausar).

1. En el cuadro de diálogo que se muestra, elija **Confirm** (Confirmar).

   Mientras el servicio se pausa, el estado del servicio cambia de **Running**(En ejecución) a **Pausing** (Pausando) y luego a **Paused** (En pausa).<a name="pause-app-runner"></a>

## Para reanudar el servicio de App Runner
<a name="pause-app-runner"></a>

1. Abre el AWS Explorador, si aún no está abierto.

1. Expanda **App Runner** para ver la lista de servicios.

1. Haga clic con el botón derecho en el servicio y elija **Resume** (Reanudar).

   Mientras se reanuda el servicio, el estado del servicio cambia de **Resuming** (Reanudando) a **Running** (En ejecución).

## Implementación de los servicios de App Runner
<a name="deploying-apprunner"></a>

Si elige la opción de implementación manual del servicio, debe iniciar explícitamente cada implementación en el servicio. <a name="deploy-app-runner"></a>

1. Abre el AWS Explorador, si aún no está abierto.

1. Expanda **App Runner** para ver la lista de servicios.

1. Haga clic con el botón derecho en el servicio y elija **Start Deployment** (Iniciar implementación).

1. Mientras se implementa la aplicación, el estado del servicio cambia de **Deploying** (Implementando) a **Running** (En ejecución).

1. Para confirmar que la aplicación se implementó correctamente, haga clic con el botón derecho en el mismo servicio y elija **Copy Service URL** (Copiar URL del servicio).

1. Para acceder a la aplicación web implementada, pegue la URL copiada en la barra de direcciones del navegador web.

## Visualización de secuencias de registros para App Runner
<a name="viewing-logs-apprunner"></a>

Usa CloudWatch los registros para monitorear, almacenar y acceder a tus flujos de registros para servicios como App Runner. Un flujo de registro es una secuencia de eventos de registro que comparten la misma fuente. <a name="view-logs-apprunner"></a>

1. Expanda **App Runner** para ver la lista de instancias de servicios.

1. Expanda una instancia de servicio específica para ver la lista de grupos de registros. (Un grupo de registros es un grupo de flujos de registro que comparten la misma configuración de retención, monitoreo y control de acceso). 

1. Haga clic con el botón derecho en un grupo de registros y elija **View Log Streams** (Ver secuencias de registro).

1. En la **paleta de comandos**, elija un flujo de registro del grupo.

   El editor de VS Code muestra la lista de eventos de registro que componen el flujo. Puede elegir cargar eventos anteriores o más recientes en el editor. 

## Eliminación de servicios de App Runner
<a name="deleting-apprunner"></a>

**importante**  
Si elimina el servicio de App Runner, se elimina de forma permanente y los datos almacenados se eliminan. Si necesita volver a crear el servicio, App Runner debe volver a recuperar el origen y crearlo si se trata de un repositorio de código. La aplicación web obtiene un nuevo dominio de App Runner. <a name="delete-app-runner"></a>

1. Abre el AWS Explorador, si aún no está abierto.

1. Expanda **App Runner** para ver la lista de servicios.

1. Haga clic con el botón derecho en un servicio y elija **Delete Service** (Eliminar servicio).

1. En la **paleta de comandos**, escriba *delete* y después pulse la tecla **Intro** para confirmar.

   El servicio eliminado muestra el estado **Deleting** (Eliminando) y, a continuación, el servicio desaparece de la lista.