CLI와 CreateDeployment 함께 사용 - AWS SDK 코드 예제

AWS Doc SDK ExamplesWord AWS SDK 리포지토리에는 더 많은 GitHub 예제가 있습니다.

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

CLI와 CreateDeployment 함께 사용

다음 코드 예제는 CreateDeployment의 사용 방법을 보여 줍니다.

CLI
AWS CLI

예제 1: 앱을 배포하고 스택 명령을 실행하려면

다음 예제에서는 create-deployment 명령을 사용하여 앱을 배포하고 스택 명령을 실행하는 방법을 보여줍니다. 명령을 지정하는 JSON 객체의 따옴표(") 문자 앞에는 모두 이스케이프 문자(\)가 표시됩니다. 이스케이프 문자가 없으면 명령이 잘못된 JSON 오류를 반환할 수 있습니다.

다음 create-deployment 예제에서는 지정된 스택에 앱을 배포합니다.

aws opsworks create-deployment \ --stack-id cfb7e082-ad1d-4599-8e81-de1c39ab45bf \ --app-id 307be5c8-d55d-47b5-bd6e-7bd417c6c7eb --command "{\"Name\":\"deploy\"}"

출력:

{ "DeploymentId": "5746c781-df7f-4c87-84a7-65a119880560" }

예제 2: Rails 앱 배포 및 데이터베이스 마이그레이션

다음 create-deployment 명령은 Ruby on Rails 앱을 지정된 스택에 배포하고 데이터베이스를 마이그레이션합니다.

aws opsworks create-deployment \ --stack-id cfb7e082-ad1d-4599-8e81-de1c39ab45bf \ --app-id 307be5c8-d55d-47b5-bd6e-7bd417c6c7eb \ --command "{\"Name\":\"deploy\", \"Args\":{\"migrate\":[\"true\"]}}"

출력:

{ "DeploymentId": "5746c781-df7f-4c87-84a7-65a119880560" }

배포에 대한 자세한 내용은 AWS OpsWorks 사용 설명서앱 배포를 참조하세요.

예제 3: 레시피 실행

다음 create-deployment 명령은 지정된 스택의 인스턴스phpapp::appsetup에서 사용자 지정 레시피인를 실행합니다.

aws opsworks create-deployment \ --stack-id 935450cc-61e0-4b03-a3e0-160ac817d2bb \ --command "{\"Name\":\"execute_recipes\", \"Args\":{\"recipes\":[\"phpapp::appsetup\"]}}"

출력:

{ "DeploymentId": "5cbaa7b9-4e09-4e53-aa1b-314fbd106038" }

자세한 내용은 AWS OpsWorks 사용 설명서스택 명령 실행을 참조하세요.

예제 4: 종속성 설치

다음 create-deployment 명령은 지정된 스택의 인스턴스에 패키지 또는 Ruby 보석과 같은 종속성을 설치합니다.

aws opsworks create-deployment \ --stack-id 935450cc-61e0-4b03-a3e0-160ac817d2bb \ --command "{\"Name\":\"install_dependencies\"}"

출력:

{ "DeploymentId": "aef5b255-8604-4928-81b3-9b0187f962ff" }

자세한 내용은 AWS OpsWorks 사용 설명서스택 명령 실행을 참조하세요.

  • API 세부 정보는 AWS CLI 명령 참조CreateDeployment를 참조하세요.

PowerShell
for PowerShell 도구

예제 1:이 명령은 계층 in AWS OpsWorks Stacks의 모든 Linux 기반 인스턴스에 새 앱 배포를 생성합니다. 계층 ID를 지정하더라도 스택 ID도 지정해야 합니다. 이 명령을 사용하면 필요한 경우 배포가 인스턴스를 다시 시작할 수 있습니다.

New-OPSDeployment -StackID "724z93zz-zz78-4zzz-8z9z-1290123zzz1z" -LayerId "511b99c5-ec78-4caa-8a9d-1440116ffd1b" -AppId "0f7a109c-bf68-4336-8cb9-d37fe0b8c61d" -Command_Name deploy -Command_Arg @{Name="allow_reboot";Value="true"}

예제 2:이 명령은 phpapp쿡북의 appsetup 레시피와 testcookbook쿡북의 secbaseline 레시피를 배포합니다. 배포 대상은 인스턴스 하나이지만 스택 ID와 계층 ID도 필요합니다. Command_Arg 파라미터 allow_reboot 속성은 로 설정되어 true있으므로 필요한 경우 배포가 인스턴스를 다시 시작할 수 있습니다.

$commandArgs = '{ "Name":"execute_recipes", "Args"{ "recipes":["phpapp::appsetup","testcookbook::secbaseline"] } }' New-OPSDeployment -StackID "724z93zz-zz78-4zzz-8z9z-1290123zzz1z" -LayerId "511b99c5-ec78-4caa-8a9d-1440116ffd1b" -InstanceId "d89a6118-0007-4ccf-a51e-59f844127021" -Command_Name $commandArgs -Command_Arg @{Name="allow_reboot";Value="true
  • API 세부 정보는 AWS Tools for PowerShell Cmdlet 참조CreateDeployment를 참조하세요.