Fase 2: configura il contenuto sorgente da distribuire sull'istanza Amazon EC2 di Windows Server - AWS CodeDeploy

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

Fase 2: configura il contenuto sorgente da distribuire sull'istanza Amazon EC2 di Windows Server

Ora è il momento di configurare il contenuto sorgente della tua applicazione in modo da avere qualcosa da distribuire sull'istanza Amazon EC2. Per questo tutorial, distribuirai una singola pagina Web sull'istanza Amazon EC2 che esegue Windows Server, che eseguirà Internet Information Services (IIS) come server Web. Questa pagina Web mostrerà un semplice messaggio «Hello, World!» messaggio.

Crea la pagina web

  1. Creare una sottodirectory (sottocartella) denominata HelloWorldApp nella propria cartella c:\temp e quindi passare a questa cartella.

    mkdir c:\temp\HelloWorldApp cd c:\temp\HelloWorldApp
    Nota

    Non è necessario utilizzare la posizione c:\temp o il nome della sottocartella di HelloWorldApp. Se si utilizza una posizione o un nome della sottocartella diverso, assicurarsi di usarlo durante tutto il tutorial.

  2. Utilizzare un editor di testo per creare un file all'interno della cartella. Assegnare un nome al file index.html.

    notepad index.html
  3. Aggiungere il codice HTML seguente al file, quindi salvare il file.

    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <title>Hello, World!</title> <style> body { color: #ffffff; background-color: #0188cc; font-family: Arial, sans-serif; font-size:14px; } </style> </head> <body> <div align="center"><h1>Hello, World!</h1></div> <div align="center"><h2>You have successfully deployed an application using CodeDeploy</h2></div> <div align="center"> <p>What to do next? Take a look through the <a href="https://aws.amazon.com/codedeploy">CodeDeploy Documentation</a>.</p> </div> </body> </html>

Crea uno script per eseguire l'applicazione

Successivamente, creerai uno script che CodeDeploy verrà utilizzato per configurare il server Web sull'istanza Amazon EC2 di destinazione.

  1. Nella stessa sottocartella in cui viene salvato il file index.html, utilizzare un editor di testo per creare un altro file. Assegnare un nome al file before-install.bat.

    notepad before-install.bat
  2. Aggiungere lo script batch seguente al file, quindi salvare il file.

    REM Install Internet Information Server (IIS). c:\Windows\Sysnative\WindowsPowerShell\v1.0\powershell.exe -Command Import-Module -Name ServerManager c:\Windows\Sysnative\WindowsPowerShell\v1.0\powershell.exe -Command Install-WindowsFeature Web-Server

Aggiungi un file con le specifiche dell'applicazione

Successivamente, aggiungerete un file di specifiche dell'applicazione (AppSpec file) oltre alla pagina Web e al file di script batch. Il AppSpec file è un file in formato YAML utilizzato da: CodeDeploy

  • Mappare i file sorgente nella revisione dell'applicazione nelle loro destinazioni sull'istanza.

  • Specificare gli script da eseguire sull'istanza durante la distribuzione.

Il AppSpec file deve avere un nome. appspec.yml Deve essere inserito nella cartella root del codice sorgente dell'applicazione.

  1. Nella stessa sottocartella in cui vengono salvati i file index.html e before-install.bat, utilizzare un editor di testo per creare un altro file. Assegnare un nome al file appspec.yml.

    notepad appspec.yml
  2. Aggiungere il codice YAML seguente al file, quindi salvare il file.

    version: 0.0 os: windows files: - source: \index.html destination: c:\inetpub\wwwroot hooks: BeforeInstall: - location: \before-install.bat timeout: 900

CodeDeploy utilizzerà questo AppSpec file per copiare il index.html file nella cartella principale del codice sorgente dell'applicazione nella c:\inetpub\wwwroot cartella sull'istanza Amazon EC2 di destinazione. Durante la distribuzione, CodeDeploy eseguirà lo script before-install.bat batch sull'istanza Amazon EC2 di destinazione durante l'evento del ciclo di vita della BeforeInstall distribuzione. Se l'esecuzione di questo script impiega più di 900 secondi (15 minuti), CodeDeploy interromperà la distribuzione e contrassegnerà la distribuzione sull'istanza Amazon EC2 come fallita.

Per ulteriori informazioni su queste impostazioni, consulta i CodeDeploy AppSpec riferimento al file.

Importante

Le ubicazioni e i numeri di spazi tra ciascuna delle voci in questo file sono importanti. Se la spaziatura non è corretta, CodeDeploy verrà generato un errore di cui potrebbe essere difficile eseguire il debug. Per ulteriori informazioni, consulta AppSpec Spaziatura tra i file.