CodeDeploy pec 파일 참조 - AWS CodeDeploy

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

CodeDeploy pec 파일 참조

이 단원은 참조용입니다. AppSpec 파일의 개념적 개요는 단원을 참조하십시오.Application Specification Files.

AppSpec 파일 (AppSpec 파일) 은YAML배포를 관리하기 위해 CodeDeploy 에서 사용하는 형식 또는 JSON 형식 파일입니다.

참고

EC2/온프레미스 배포에 대한 AppSpec 파일의 이름은appspec.yml또는appspec.yaml로컬 배포를 수행 하지 않는 한. 자세한 내용은 로컬 배포 생성 섹션을 참조하세요.

Amazon ECS 컴퓨팅 플랫폼에 대한 AppSpec 파일

Amazon ECS 컴퓨팅 플랫폼 애플리케이션의 경우 CodeDeploy 에서 AppSpec 파일을 사용하여 다음을 결정합니다.

  • Amazon ECS 작업 정의 파일 이 값은 ARN 으로 지정됩니다.TaskDefinition명령을 AppSpec 파일에 저장합니다.

  • Application Load Balancer 또는 Network Load Balancer 서가 배포 중에 트래픽을 다시 라우팅하는 대체 작업 세트의 컨테이너 및 포트입니다. 이 지정 된LoadBalancerInfo명령을 AppSpec 파일에 저장합니다.

  • Amazon ECS 서비스에 대한 선택적 정보 (예: 실행되는 플랫폼 버전, 서브넷, 보안 그룹).

  • Amazon ECS 배포 중 수명 주기 이벤트에 해당하는 후크 중에 실행할 Lambda 함수 (선택 사항) 자세한 내용은 Amazon ECS 배포를 위한 AppSpec '섹션' 섹션을 참조하세요.

AppSpec 파일을AWS Lambda컴퓨팅 플랫폼

용AWSLambda 컴퓨팅 플랫폼 응용 프로그램의 경우 AppSpec 파일은 CodeDeploy 에서 다음을 결정하는 데 사용됩니다.

  • 배포할 Lambda 함수 버전

  • 유효성 검사 테스트로 사용할 Lambda 함수

AppSpec 파일은 YAML 형식 또는 JSON 형식일 수 있습니다. 배포를 생성할 때 AppSpec 파일의 내용을 CodeDeploy 의 콘솔에 직접 입력할 수도 있습니다.

EC2/온프레미스 컴퓨팅 플랫폼에 대한 AppSpec 파일

애플리케이션에서 EC2/온프레미스 컴퓨팅 플랫폼을 사용하는 경우 AppSpec 파일은appspec.yml이 은 애플리케이션 소스 코드 디렉터리 구조의 루트에 저장해야 합니다. 그렇지 않으면 배포에 실패합니다. CodeDeploy 에서 사용하여 다음 사항을 확인합니다.

  • Amazon S3 또는 GitHub 의 애플리케이션 개정에서 인스턴스에 설치해야 할 항목

  • 배포 수명 주기 이벤트에 대한 응답으로 실행될 수명 주기 이벤트 후크

AppSpec 파일을 완성한 후 배포할 콘텐츠와 함께 아카이브 파일 (zip, tar 또는 압축 tar) 로 번들링합니다. 자세한 내용은 CodeDeploy 의 애플리케이션 개정 작업 섹션을 참조하세요.

참고

tar 및 압축 tar 아카이브 파일 형식 (.tar 및 .tar.gz) 은 Windows Server 인스턴스에서 지원되지 않습니다.

번들링된 아카이브 파일 (에서는 CodeDeploy 에서개정) 에서 Amazon S3 버킷 또는 Git 리포지토리에 업로드합니다. 그런 다음 CodeDeploy 를 사용하여 개정을 배포합니다. 지침은 CodeDeploy 를 사용하여 배포 만들기 단원을 참조하십시오.

EC2/온프레미스 컴퓨팅 플랫폼 배포용 appspec.yml은 개정의 루트 디렉터리에 저장됩니다. 자세한 내용은 EC2/온프레미스 배포에 사용되는 AppSpec 파일 추가CodeDeploy 에 대한 수정 버전 계획 섹션을 참조하세요.

AppSpec 파일 간격

다음은 AppSpec 파일 간격에 대한 올바른 형식입니다. 대괄호로 묶인 숫자는 항목 간에 있어야 하는 공백 수를 나타냅니다. 예,[4]는 항목 사이에 네 개의 공백을 삽입하는 것을 의미합니다. CodeDeploy 는 AppSpec 파일의 공백 위치 및 개수가 올바르지 않으면 디버깅하기 어려울 수 있는 오류를 발생시킵니다.

version:[1]version-number os:[1]operating-system-name files: [2]-[1]source:[1]source-files-location [4]destination:[1]destination-files-location permissions: [2]-[1]object:[1]object-specification [4]pattern:[1]pattern-specification [4]except:[1]exception-specification [4]owner:[1]owner-account-name [4]group:[1]group-name [4]mode:[1]mode-specification [4]acls: [6]-[1]acls-specification [4]context: [6]user:[1]user-specification [6]type:[1]type-specification [6]range:[1]range-specification [4]type: [6]-[1]object-type hooks: [2]deployment-lifecycle-event-name: [4]-[1]location:[1]script-location [6]timeout:[1]timeout-in-seconds [6]runas:[1]user-name

다음은 간격이 올바르게 지정된 AppSpec 파일의 예입니다.

version: 0.0 os: linux files: - source: / destination: /var/www/html/WordPress hooks: BeforeInstall: - location: scripts/install_dependencies.sh timeout: 300 runas: root AfterInstall: - location: scripts/change_permissions.sh timeout: 300 runas: root ApplicationStart: - location: scripts/start_server.sh - location: scripts/create_test_db.sh timeout: 300 runas: root ApplicationStop: - location: scripts/stop_server.sh timeout: 300 runas: root

간격 지정에 대한 자세한 내용은 YAML 사양을 참조하십시오.