

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Distribuzione di un'app ASP.NET Core 2.0 su Amazon ECS (Fargate) (Legacy)
<a name="deployment-ecs-aspnetcore-fargate"></a>

**Importante**  
Questa documentazione si riferisce ai servizi e alle funzionalità precedenti. Per guide e contenuti aggiornati, consulta la guida agli [strumenti di AWS distribuzione.NET](https://aws.github.io/aws-dotnet-deploy/) e il sommario [Deploying to AWS](https://docs.aws.amazon.com/toolkit-for-visual-studio/latest/user-guide/deployment-chapt.html) aggiornato.

Questa sezione descrive come utilizzare la AWS procedura guidata **Publish Container to**, fornita come parte del Toolkit for Visual Studio, per distribuire un'applicazione ASP.NET Core 2.0 containerizzata destinata a Linux tramite Amazon ECS utilizzando il tipo di avvio Fargate. Poiché un'applicazione Web è concepita per essere eseguita in maniera continua, verrà distribuita come un servizio.

## Prima di pubblicare il contenitore
<a name="tkv-deploy-ecs-netcore-prerequisites"></a>

Prima di utilizzare la AWS procedura guidata **Publish Container to** per distribuire l'applicazione ASP.NET Core 2.0:
+  [Specificate AWS le vostre credenziali](deployment-ecs-specify-credentials.md) e [iniziate la configurazione con Amazon ECS](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/get-set-up-for-amazon-ecs.html).
+  [Installa Docker](https://docs.docker.com/engine/installation). Sono disponibili diverse opzioni di installazione, tra cui [Docker per Windows](https://docs.docker.com/docker-for-windows/install/).
+ In Visual Studio, crea (o apri) un progetto per un'app containerizzata ASP.NET Core 2.0 destinata a Linux.

## Accesso al Publish Container alla procedura guidata AWS
<a name="tkv-deployment-ecs-netcore-accessing"></a>

**Per distribuire un'applicazione containerizzata ASP.NET Core 2.0 destinata a Linux, fai clic con il pulsante destro del mouse sul progetto in Solution Explorer e seleziona Publish Container to. AWS**

![\[Context menu showing "Publish Container to AWS" option highlighted for deployment.\]](http://docs.aws.amazon.com/it_it/toolkit-for-visual-studio/latest/user-guide/images/wiz-ecspub-fargate-step0a.png)


Puoi anche selezionare **Publish Container to nel menu Build di AWS** Visual Studio.

## Pubblica contenitore su AWS Wizard
<a name="tkv-deploy-ecs-pubtoaws"></a>

![\[AWS Publish Container interface showing profile, Docker image, and deployment options for ECR.\]](http://docs.aws.amazon.com/it_it/toolkit-for-visual-studio/latest/user-guide/images/wiz-ecspub-fargate-step1.png)


 **Profilo dell'account da utilizzare**: seleziona un profilo account da utilizzare.

 **Regione**: scegli la regione di distribuzione. Il profilo e la regione vengono utilizzati per configurare le risorse dell'ambiente di distribuzione e per selezionare il registro Docker predefinito.

 **Configurazione**: seleziona la configurazione di build dell'immagine Docker.

 **Docker Repository**: scegli un repository Docker esistente o digita il nome di un nuovo repository e verrà creato. Questo è il repository in cui viene inviato il contenitore di build.

 **Tag**: seleziona un tag esistente o digita il nome di un nuovo tag. I tag possono tenere traccia di dettagli importanti come versione, opzioni o altri elementi di configurazione unici del contenitore Docker.

 **Obiettivo di distribuzione**: seleziona il **servizio su un cluster ECS.** Utilizza questa opzione di distribuzione quando l'applicazione è destinata a durare a lungo (come un'applicazione Web ASP.NET).

 **Salva le impostazioni `aws-docker-tools-defaults.json` e configura il progetto per la distribuzione da riga di comando**: seleziona questa opzione se desideri la flessibilità della distribuzione dalla riga di comando. `dotnet ecs deploy`Utilizzala dalla directory del progetto per la distribuzione e `dotnet ecs publish` il contenitore.

## Avvia la pagina di configurazione
<a name="tkv-deploy-ecs-launch-configuration"></a>

![\[AWS Launch Configuration interface for creating an empty ECS cluster with FARGATE launch type.\]](http://docs.aws.amazon.com/it_it/toolkit-for-visual-studio/latest/user-guide/images/wiz-ecspub-fargate-step2.png)


 **Cluster ECS**: scegli il cluster che eseguirà la tua immagine Docker. Se scegli di creare un cluster vuoto, fornisci un nome per il nuovo cluster.

 **Tipo di avvio**: scegli **FARGATE**.

 **CPU Maximum (vCPU)**: scegli la quantità massima di capacità di elaborazione necessaria per la tua applicazione. Per visualizzare gli intervalli consentiti di valori di CPU e memoria, consulta la dimensione dell'[attività](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definition_parameters.html).

 **Memoria massima (GB)**: seleziona la quantità massima di memoria disponibile per l'applicazione.

 Sottoreti **VPC: scegli una o più sottoreti** sotto un singolo VPC. Se scegli più di una sottorete, le tue attività verranno distribuite su di esse. Ciò può migliorare la disponibilità. Per ulteriori informazioni, consulta [VPC predefinito e sottoreti predefinite](https://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/default-vpc.html).

 **Gruppi di sicurezza**: scegli un gruppo di sicurezza.

Un gruppo di sicurezza funge da firewall per le istanze Amazon EC2 associate, controllando il traffico in entrata e in uscita a livello di istanza.

 I [gruppi di sicurezza predefiniti](https://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_SecurityGroups.html) sono configurati per consentire il traffico in entrata dalle istanze assegnate allo stesso gruppo di sicurezza e tutto il traffico in uscita. IPv4 È necessario che l'uscita in uscita sia consentita in modo che il servizio possa raggiungere l'archivio del contenitore.

 **Assegna indirizzo IP pubblico**: seleziona questa opzione per rendere l'attività accessibile da Internet.

## Pagina di configurazione del servizio
<a name="tkv-deploy-ecs-service"></a>

![\[AWS Service Configuration interface for deploying an application with customizable parameters.\]](http://docs.aws.amazon.com/it_it/toolkit-for-visual-studio/latest/user-guide/images/wiz-ecspub-fargate-step3.png)


 **Servizio**: seleziona uno dei servizi nel menu a discesa per distribuire il contenitore in un servizio esistente. Oppure scegli **Crea nuovo** per creare un nuovo servizio. I nomi dei servizi devono essere univoci all'interno di un cluster, ma puoi avere servizi dai nomi simili in più cluster all'interno di una regione o in più regioni.

 **Numero di attività**: il numero di attività da distribuire e mantenere in esecuzione sul cluster. Ogni attività è un'istanza del contenitore.

 **Percentuale minima** di integrità: la percentuale di attività che devono rimanere invariate durante una distribuzione arrotondata al numero intero più vicino. `RUNNING`

 Percentuale **massima**: la percentuale di attività consentite `PENDING` nello stato `RUNNING` o durante una distribuzione arrotondata per difetto al numero intero più vicino.

## Pagina Application Load Balancer
<a name="tkv-deploy-ecs-app-load-balancer"></a>

![\[Application Load Balancer configuration interface for AWS with options for load balancer and target group settings.\]](http://docs.aws.amazon.com/it_it/toolkit-for-visual-studio/latest/user-guide/images/wiz-ecspub-fargate-step4.png)


 **Configura Application Load Balancer**: seleziona questa opzione per configurare un Application Load Balancer.

 **Load Balancer**: seleziona un load balancer esistente o scegli **Crea nuovo** e digita il nome del nuovo load balancer.

 Porta **listener: seleziona una porta** listener esistente o scegli **Crea nuova** e digita un numero di porta. L'impostazione predefinita, la porta`80`, è appropriata per la maggior parte delle applicazioni Web.

 **Gruppo target**: seleziona il gruppo target in cui Amazon ECS registrerà le attività nel servizio.

 **Path Pattern**: il load balancer utilizzerà il routing basato sul percorso. Accetta l'impostazione predefinita `/` o fornisci uno schema diverso. Il modello di percorso fa distinzione tra maiuscole e minuscole, può contenere fino a 128 caratteri e contiene un [set selezionato di](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/load-balancer-listeners.html#path-conditions) caratteri.

 **Health Check Path**: il percorso ping che rappresenta la destinazione degli obiettivi per i controlli sanitari. Per impostazione predefinita, tale valore è `/`. Se necessario, inserisci un percorso diverso. Se il percorso inserito non è valido, il controllo dello stato di salute avrà esito negativo e verrà considerato non integro.

Se distribuisci più servizi e ogni servizio verrà distribuito in un percorso o in una posizione diversa, avrai bisogno di percorsi di controllo personalizzati.

## Pagina di definizione delle attività
<a name="tkv-deploy-ecs-task-definition"></a>

![\[AWS Task Definition interface for configuring Docker container parameters and permissions.\]](http://docs.aws.amazon.com/it_it/toolkit-for-visual-studio/latest/user-guide/images/wiz-ecspub-fargate-step5.png)


 **Definizione dell'attività**: selezionate una definizione di attività esistente o scegliete **Crea nuova** e digitate il nome della nuova definizione dell'attività.

 **Contenitore**: seleziona un contenitore esistente o scegli **Crea nuovo** e digita il nome del nuovo contenitore.

 **Task Role**: seleziona un ruolo IAM con le credenziali di cui la tua app ha bisogno per accedere ai AWS Servizi. Ecco come vengono passate le credenziali all'applicazione. Scopri [come specificare le credenziali AWS di sicurezza per la tua applicazione](deployment-ecs-specify-credentials.md).

 **Ruolo di esecuzione dell'attività**: seleziona un ruolo con le autorizzazioni per estrarre immagini private e pubblicare registri. AWS Fargate lo userà per vostro conto.

 **Mappatura delle porte**: scegli il numero di porta sul container associato alla porta host assegnata automaticamente.

 **Variabili di ambiente**: aggiungi, modifica o elimina le variabili di ambiente per il contenitore. Puoi modificarlo in base alla tua implementazione.

Quando sei soddisfatto della configurazione, fai clic su **Pubblica** per iniziare il processo di distribuzione.

## Contenitore di pubblicazione su AWS
<a name="tkv-deploy-ecs-publishing"></a>

![\[AWS container publishing progress window showing steps for deploying to ECS and ECR.\]](http://docs.aws.amazon.com/it_it/toolkit-for-visual-studio/latest/user-guide/images/wiz-ecspub-fargate-step6.png)


Gli eventi vengono visualizzati durante la distribuzione. La procedura guidata viene chiusa automaticamente al completamento. È possibile sostituire questo deselezionando la casella nella parte inferiore della pagina.

Puoi trovare l'URL delle tue nuove istanze in AWS Explorer. Espandi Amazon ECS e Clusters, quindi fai clic sul tuo cluster.