View a markdown version of this page

QuickStart: Implemente una aplicación.NET Core para Linux en Elastic Beanstalk - AWS Elastic Beanstalk

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.

QuickStart: Implemente una aplicación.NET Core para Linux en Elastic Beanstalk

Este QuickStart tutorial explica el proceso de creación de una aplicación.NET Core para Linux e implementarla en un AWS Elastic Beanstalk entorno.

No válido para uso en producción

Los ejemplos se presentan solo con fines de demostración. No utilice aplicaciones de ejemplo en producción.

Sus AWS inscrita

Si aún no es AWS cliente, debe crear una AWS cuenta. Al registrarse, podrá acceder a Elastic Beanstalk AWS y a otros servicios que necesite.

Si ya tiene una AWS cuenta, puede pasar a. Requisitos previos

Inscríbase en una Cuenta de AWS

Para empezar AWS, necesitas un Cuenta de AWS. Para obtener información sobre cómo crear un Cuenta de AWS, consulte Cómo empezar con un Cuenta de AWS en la Guía de AWS Account Management referencia.

Requisitos previos

Para seguir los procedimientos de esta guía, necesitará un shell o un terminal de línea de comando donde pueda ejecutar los comandos. Los comandos aparecen en listas y van precedidos del símbolo del sistema ($) y del nombre del directorio actual, si es aplicable.

~/eb-project$ this is a command this is output

En Linux y macOS, puede utilizar el administrador de shell y paquetes preferido. En Windows, puede instalar el subsistema de Windows para Linux para obtener una Windows-integrated versión de Ubuntu y Bash.

CLI DE EB

En este tutorial también se utiliza la interfaz de línea de comandos de Elastic Beanstalk (CLI de EB). Para obtener detalles sobre la instalación y configuración de la CLI de EB, consulte Instalación de la CLI de EB con el script de configuración (recomendado) y Configuración de la CLI de EB.

.NET Core en Linux

Si no tiene el SDK de .NET instalado en su máquina local, puede instalarlo en el enlace Descargar .NET del sitio web Documentación de .NET.

Verifique la instalación del SDK de .NET con el siguiente comando.

~$ dotnet --info

Paso 1: crear una aplicación de .NET Core en Linux

Cree el directorio del proyecto.

~$ mkdir eb-dotnetcore ~$ cd eb-dotnetcore

A continuación, cree un aplicación de muestra Hello World mediante los siguientes comandos.

~/eb-dotnetcore$ dotnet new web --name HelloElasticBeanstalk ~/eb-dotnetcore$ cd HelloElasticBeanstalk

Paso 2: ejecutar la aplicación a nivel local

Para implementar la aplicación localmente, ejecute el siguiente comando.

~/eb-dotnetcore/HelloElasticBeasntalk$ dotnet run

El resultado debería tener un aspecto similar al texto siguiente.

Building... info: Microsoft.Hosting.Lifetime[14] Now listening on: https://localhost:7294 info: Microsoft.Hosting.Lifetime[14] Now listening on: http://localhost:5052 info: Microsoft.Hosting.Lifetime[0] Application started. Press Ctrl+C to shut down. info: Microsoft.Hosting.Lifetime[0] Hosting environment: Development info: Microsoft.Hosting.Lifetime[0]
nota

El comando dotnet selecciona un puerto de forma aleatoria al ejecutar la aplicación localmente. En este ejemplo, el puerto es 5052. Al implementar la aplicación en el entorno de Elastic Beanstalk, la aplicación se ejecutará en el puerto 5000.

Introduzca la URL http://localhost:port en su navegador. Para este ejemplo específico, el comando es http://localhost:5052. El navegador web debería mostrar “Hello World!”.

Paso 3: implementar la aplicación .NET Core en Linux con la CLI de EB

Ejecute los siguientes comandos para crear un entorno de Elastic Beanstalk en esta aplicación.

Para crear un entorno e implementar la aplicación de .NET Core en Linux
  1. Compila y publica tu aplicación en una carpeta para implementarla en el entorno de Elastic Beanstalk que vas a crear.

    ~$ cd eb-dotnetcore/HelloElasticBeanstalk ~/eb-dotnetcore/HelloElasticBeanstalk$ dotnet publish -o site
  2. Navegue hasta el directorio del sitio en el que acaba de publicar la aplicación.

    ~/eb-dotnetcore/HelloElasticBeanstalk$ cd site
  3. Inicialice el repositorio de la CLI de EB con el comando eb init.

    Tenga en cuenta los siguientes detalles relacionados con la versión de la ramificación de la plataforma que especifique en el comando:

    • Sustituya x.y.z en el siguiente comando por la versión más reciente de la ramificación de la plataforma .NET 6 en AL2023.

    • Para encontrar la versión más reciente de la ramificación de la plataforma, consulte Plataformas compatibles con .NET Core en Linux en la guía AWS Elastic Beanstalk Platforms.

    • Un ejemplo del nombre de una pila de soluciones que incluye el número de versión es 64bit-amazon-linux-2023-v3.1.1-running-.net-6. En este ejemplo, la versión de la ramificación es 3.1.1.

    ~eb-dotnetcore/HelloElasticBeanstalk/site$ eb init -p 64bit-amazon-linux-2023-vx.y.z-running-.net-6 dotnetcore-tutorial --region us-east-2 Application dotnetcore-tutorial has been created.

    Este comando crea una aplicación llamada dotnetcore-tutorial y configura el repositorio local para crear entornos con la versión de la plataforma de -NET Core en Linux especificada en el comando.

  4. (Opcional) Ejecute de nuevo eb init para configurar un par de claves predeterminadas de forma que pueda usar SSH para conectarse a la instancia de EC2 donde se ejecuta la aplicación.

    ~eb-dotnetcore/HelloElasticBeanstalk/site$ eb init Do you want to set up SSH for your instances? (y/n): y Select a keypair. 1) my-keypair 2) [ Create new KeyPair ]

    Seleccione un par de claves si ya tiene uno o siga las instrucciones para crear uno. Si no ve el símbolo del sistema o más adelante necesita cambiar la configuración, ejecute eb init -i.

  5. Cree un entorno e implemente la aplicación en él con eb create. Elastic Beanstalk crea automáticamente un archivo zip para su aplicación y lo inicia en el puerto 5000.

    a

    ~eb-dotnetcore/HelloElasticBeanstalk/site$ eb create dotnet-tutorial

    Elastic Beanstalk tarda aproximadamente cinco minutos en crear el entorno.

Paso 4: ejecutar la aplicación en Elastic Beanstalk

Cuando finalice el proceso de creación del entorno, abra el sitio web con eb open.

~eb-dotnetcore/HelloElasticBeanstalk/site$ eb open

¡Enhorabuena! Ha implementado una aplicación .NET Core en Linux con Elastic Beanstalk. Se abre una ventana del navegador con el nombre de dominio creado para su aplicación.

Paso 5: Eliminar

Cuando termine de trabajar con la aplicación, puede terminar el entorno. Elastic Beanstalk AWS cancela todos los recursos asociados a su entorno.

Utilice el comando siguiente de la CLI de EB para terminar su entorno de Elastic Beanstalk.

~eb-dotnetcore/HelloElasticBeanstalk/site$ eb terminate

AWS recursos para su aplicación

Acaba de crear una aplicación de instancia única. Sirve como una aplicación de muestra sencilla con una sola instancia de EC2, por lo que no requiere equilibrio de carga ni escalado automático. Para las aplicaciones de instancia única, Elastic Beanstalk crea los siguientes recursos: AWS

  • EC2 instance (Instancia de EC2): máquina virtual de Amazon EC2 configurada para ejecutar aplicaciones web en la plataforma que elija.

    Cada plataforma ejecuta un conjunto distinto de software, archivos de configuración y scripts compatibles con una determinada versión de lenguaje, marco y contenedor web (o una combinación de ellos). La mayoría de las plataformas utilizan Apache o nginx como un proxy inverso que procesa el tráfico web delante de la aplicación web, reenvía las solicitudes a esta, administra los recursos estáticos y genera registros de acceso y errores.

  • Instance security group (Grupo de seguridad de la instancia): grupo de seguridad de Amazon EC2 configurado para permitir el tráfico entrante en el puerto 80. Este recurso permite que el tráfico HTTP procedente del equilibrador de carga llegue a la instancia de EC2 en la que se ejecuta la aplicación web. De forma predeterminada, el tráfico no está permitido en otros puertos.

  • Bucket de Amazon S3: ubicación de almacenamiento para el código fuente, los registros y otros artefactos que se crean al utilizar Elastic Beanstalk.

  • CloudWatch Alarmas de Amazon: dos CloudWatch alarmas que monitorean la carga de las instancias de su entorno y se activan si la carga es demasiado alta o demasiado baja. Cuando se activa una alarma, en respuesta, el grupo de escalado automático aumenta o reduce los recursos.

  • CloudFormation pila: Elastic CloudFormation Beanstalk se utiliza para lanzar los recursos de su entorno y propagar los cambios de configuración. Los recursos se definen en una plantilla que puede verse en la consola de CloudFormation.

  • Nombre de dominio: un nombre de dominio que se dirige a su aplicación web en el formulario. subdomain region.elasticbeanstalk.com.

Elastic Beanstalk administra todos estos recursos. Cuando termina su entorno, Elastic Beanstalk termina todos los recursos que este contiene.

Siguientes pasos

Una vez que disponga de un entorno que ejecute una aplicación, podrá implementar una nueva versión de la aplicación o una aplicación distinta en cualquier momento. La implementación de una nueva versión de la aplicación es una tarea muy rápida, ya que no se requiere aprovisionar ni reiniciar instancias EC2. También puede explorar el nuevo entorno con la consola de Elastic Beanstalk. Para ver los pasos detallados, consulte Explore your environment en el capítulo Getting started de esta guía.

Después de que implemente una aplicación de muestra o dos y esté listo para comenzar a desarrollar y ejecutar las aplicaciones de .NET Core en Linux de forma local, consulte Configuración del entorno de desarrollo .NET Core en Linux para Elastic Beanstalk.

Implementar con la consola de Elastic Beanstalk

También puede utilizar la consola de Elastic Beanstalk para lanzar la aplicación de muestra. Para ver los pasos detallados, consulte Create an example application en el capítulo Getting Started de esta guía.