Distribuzioni di applicazioni di Elastic Beanstalk - AWS Toolkit con Amazon Q

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à.

Distribuzioni di applicazioni di Elastic Beanstalk

In questo argomento viene descritto come il manifesto di distribuzione per il contenitore Microsoft Windows di Elastic Beanstalk supporta le distribuzioni di applicazioni personalizzate.

Le distribuzioni di applicazioni personalizzate sono una potente funzionalità per gli utenti avanzati che desiderano sfruttare la potenza di Elastic Beanstalk per creare e gestire il loroAWSrisorse, ma vogliono un controllo completo su come viene distribuita la loro applicazione. Per una distribuzione personalizzata di applicazioni, è possibile creare script di Windows PowerShell per le tre diverse azioni eseguite da Elastic Beanstalk. L'azione di installazione viene utilizzata quando viene avviata una distribuzione, il riavvio viene utilizzato quandoRestartAppServerL'API viene richiamata dal toolkit o dalla console Web e la disinstallazione che viene richiamata su qualsiasi distribuzione precedente ogni volta che si verifica una nuova distribuzione.

Ad esempio, è possibile che si disponga di un'applicazione ASP.NET che si desidera distribuire mentre il team di documentazione ha scritto un sito Web statico che desidera includere nella distribuzione. Puoi farlo scrivendo il manifest di distribuzione in questo modo:

{ "manifestVersion": 1, "deployments": { "msDeploy": [ { "name": "app", "parameters": { "appBundle": "CoolApp.zip", "iisPath": "/" } } ], "custom": [ { "name": "PowerShellDocs", "scripts": { "install": { "file": "install.ps1" }, "restart": { "file": "restart.ps1" }, "uninstall": { "file": "uninstall.ps1" } } } ] } }

Gli script elencati per ogni azione devono trovarsi nel bundle dell'applicazione rispetto al file manifest di distribuzione. Per questo esempio, il pacchetto di applicazioni conterrà anche un file documentation.zip che contiene un sito Web statico creato dal team di documentazione.

Lainstall.ps1script estrae il file zip e imposta il percorso IIS.

Add-Type -assembly "system.io.compression.filesystem" [io.compression.zipfile]::ExtractToDirectory('./documentation.zip', 'c:\inetpub\wwwroot\documentation') powershell.exe -Command {New-WebApplication -Name documentation -PhysicalPath c:\inetpub\wwwroot\documentation -Force}

Poiché l'applicazione è in esecuzione in IIS, l'azione di riavvio richiamerà un ripristino di IIS.

iisreset /timeout:1

Per la disinstallazione degli script, è importante pulire tutte le impostazioni e i file utilizzati durante la fase di installazione. In questo modo, durante la fase di installazione della nuova versione, è possibile evitare qualsiasi collisione con le distribuzioni precedenti. Per questo esempio, è necessario rimuovere l'applicazione IIS per il sito Web statico e rimuovere i file del sito Web.

powershell.exe -Command {Remove-WebApplication -Name documentation} Remove-Item -Recurse -Force 'c:\inetpub\wwwroot\documentation'

Con questi file di script e il file documentation.zip inclusi nel pacchetto dell'applicazione, la distribuzione crea l'applicazione ASP.NET e quindi distribuisce il sito della documentazione.

Per questo esempio, scegliamo un semplice esempio che distribuisce un semplice sito Web statico, ma con la distribuzione di applicazioni personalizzate è possibile distribuire qualsiasi tipo di applicazione e consentire a Elastic Beanstalk di gestire ilAWSrisorse per questo.