AWS 文檔 AWS SDK示例 GitHub 回購中有更多SDK示例
本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
搭CreateDeployment
配 AWS SDK或使用 CLI
下列程式碼範例會示範如何使用CreateDeployment
。
- CLI
-
- AWS CLI
-
範例 1:部署應用程式並執行堆疊命令
下列範例顯示如何使用
create-deployment
命令來部署應用程式和執行堆疊命令。請注意,JSON物件中指定指令的引號 ("
) 字元都會在前面加上逸出字元 (\)。如果沒有逸出字元,命令可能會傳回無效錯JSON誤。下列
create-deployment
範例會將應用程式部署至指定的堆疊。aws opsworks create-deployment \ --stack-id
cfb7e082-ad1d-4599-8e81-de1c39ab45bf
\ --app-id307be5c8-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-id307be5c8-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 gem。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
-
- 適用的工具 PowerShell
-
範例 1:此命令會在堆疊中圖層中的所有 Linux 執行個體上建立新的應用程式部署。 AWS OpsWorks 即使您指定了圖層 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:此指令會部署
appsetup
食譜中的食phpapp
譜,以及secbaseline
食譜中的testcookbook
食譜。部署目標是一個執行個體,但也需要堆疊 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 指令程CreateDeployment式參考中的。
-