2단계: Windows Server Amazon EC2 인스턴스에 배포하도록 원본 콘텐츠 구성 - AWS CodeDeploy

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

2단계: Windows Server Amazon EC2 인스턴스에 배포하도록 원본 콘텐츠 구성

이제 Amazon EC2 인스턴스에 배포할 수 있도록 애플리케이션의 소스 콘텐츠를 구성해야 합니다. 이 튜토리얼에서는 Windows Server를 실행하는 Amazon EC2 인스턴스에 단일 웹 페이지를 배포합니다. 이 인스턴스는 IIS(인터넷 정보 서비스)를 웹 서버로 실행합니다. 이 웹 페이지는 간단한 “Hello, World!” 메시지를 표시합니다.

웹 페이지 만들기

  1. c:\temp 폴더에 HelloWorldApp(이)라는 하위 디렉터리(하위 폴더)를 만든 다음 다음 해당 폴더로 전환합니다.

    mkdir c:\temp\HelloWorldApp cd c:\temp\HelloWorldApp
    참고

    c:\temp 또는 HelloWorldApp(이)라는 하위 폴더의 위치를 사용할 필요가 없습니다. 다른 위치 또는 하위 폴더를 사용하는 경우 이 자습서 전체에서 이를 사용해야 합니다.

  2. 텍스트 편집기를 사용하여 폴더 내에 파일을 생성합니다. 파일 이름을 index.html로 지정합니다.

    notepad index.html
  3. 파일에 다음 코드를 추가하고 파일을 저장합니다.

    <!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>

애플리케이션을 실행하는 스크립트 만들기

다음으로 대상 Amazon EC2 인스턴스에서 웹 서버를 설정하는 CodeDeploy 데 사용할 스크립트를 생성합니다.

  1. 동일한 하위 폴더에서 index.html 파일이 저장되면 텍스트 편집기를 사용하여 다른 파일을 생성합니다. 파일 이름을 before-install.bat로 지정합니다.

    notepad before-install.bat
  2. 파일에 다음 배치 스크립트 코드를 추가하고 파일을 저장합니다.

    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

애플리케이션 사양 파일 추가

다음으로 웹 페이지 및 배치 스크립트 파일 외에 애플리케이션 사양 AppSpec 파일 (파일) 을 추가합니다. 이 AppSpec 파일은 다음과 같은 경우에 사용되는 YAML 형식의 파일입니다. CodeDeploy

  • 애플리케이션 수정 버전의 소스 파일을 인스턴스의 대상으로 매핑합니다.

  • 배포 중에 인스턴스에서 실행할 스크립트를 지정합니다.

AppSpec 파일 이름을 지정해야 합니다. appspec.yml 애플리케이션 소스 코드의 루트 폴더에 있어야 합니다.

  1. 동일한 하위 폴더에서 index.htmlbefore-install.bat 파일이 저장되면 텍스트 편집기를 사용하여 다른 파일을 생성합니다. 파일 이름을 appspec.yml로 지정합니다.

    notepad appspec.yml
  2. 파일에 다음 YAML 코드를 추가하고 파일을 저장합니다.

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

CodeDeploy 이 AppSpec 파일을 사용하여 애플리케이션 소스 코드의 루트 폴더에 있는 index.html 파일을 대상 Amazon EC2 인스턴스의 c:\inetpub\wwwroot 폴더로 복사합니다. 배포 중에 BeforeInstall 배포 수명 주기 이벤트 중에 대상 Amazon EC2 인스턴스에서 before-install.bat 배치 스크립트를 실행합니다. CodeDeploy 이 스크립트를 실행하는 데 900초 (15분) 이상 걸리는 경우 배포를 중지하고 Amazon EC2 인스턴스에 대한 배포를 실패로 표시합니다. CodeDeploy

이러한 설정에 대한 자세한 정보는 CodeDeploy AppSpec 파일 참조 단원을 참조하세요.

중요

이 파일에 있는 각 항목 사이의 공백 위치와 개수는 중요합니다. 간격이 올바르지 CodeDeploy 않으면 디버그하기 어려울 수 있는 오류가 발생합니다. 자세한 내용은 AppSpec 파일 간격을(를) 참조하세요.