本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
sam deploy
此頁面提供 AWS Serverless Application Model Command Line Interface (AWS SAMCLI) sam deploy命令的參考資訊。
- 
			如需 的簡介 AWS SAMCLI,請參閱 什麼是 AWS SAMCLI? 
- 
			如需使用 AWS SAMCLI sam deploy命令的文件,請參閱 使用 部署簡介 AWS SAM。
sam deploy 命令 AWS 雲端 會使用 將應用程式部署到 AWS CloudFormation。
使用方式
$<environment variables>sam deploy<options>
環境變數
- SAM_CLI_POLL_DELAY
- 
					設定 Shell 中值為 秒 SAM_CLI_POLL_DELAY的環境變數,以設定 AWS SAM CLI 檢查 AWS CloudFormation 堆疊狀態的頻率,這在查看調節時非常有用 AWS CloudFormation。此 env 變數用於輪詢在執行 時進行的describe_stackAPI 呼叫sam deploy。以下是此變數的範例: $SAM_CLI_POLL_DELAY=5sam deploy
選項
- --capabilities- LIST
- 
					您必須指定才能允許 AWS CloudFormation 建立特定堆疊的功能清單。某些堆疊範本可能包含會影響 許可的資源 AWS 帳戶,例如,透過建立新的 AWS Identity and Access Management (IAM) 使用者。對於這些堆疊,您必須指定此選項來明確認可其功能。唯一有效的值為 CAPABILITY_IAM和CAPABILITY_NAMED_IAM。如果您有 IAM 資源,則可以指定任一功能。如果您有具有自訂名稱的 IAM 資源,則必須指定CAPABILITY_NAMED_IAM。如果您未指定此選項,則操作會傳回InsufficientCapabilities錯誤。當您部署包含巢狀應用程式的應用程式時,您必須使用 CAPABILITY_AUTO_EXPAND來確認應用程式包含巢狀應用程式。如需詳細資訊,請參閱部署巢狀應用程式。
- --config-env- TEXT
- 
					在要使用的組態檔案中指定預設參數值的環境名稱。預設值為 default。如需關於組態檔案的詳細資訊,請參閱 AWS SAMCLI 組態檔案。
- --config-file- PATH
- 
					組態檔案的路徑和檔案名稱,其中包含要使用的預設參數值。預設值位於專案目錄的根 samconfig.toml目錄中。如需關於組態檔案的詳細資訊,請參閱 AWS SAMCLI 組態檔案。
- --confirm-changeset | --no-confirm-changeset
- 
					提示 確認 AWS SAMCLI 是否部署計算的變更集。 
- --debug
- 
					開啟偵錯記錄以列印 AWS SAMCLI產生的偵錯訊息,並顯示時間戳記。 
- --disable-rollback | --no-disable-rollback
- 
					指定在部署期間發生錯誤時是否要轉返 AWS CloudFormation 堆疊。根據預設,如果在部署期間發生錯誤,您的 AWS CloudFormation 堆疊會回復到最後的穩定狀態。如果您指定 --disable-rollback並在部署期間發生錯誤,則在發生錯誤之前建立或更新的資源不會復原。
- --fail-on-empty-changeset | --no-fail-on-empty-changeset
- 
					指定如果堆疊沒有變更,是否傳回非零結束碼。預設行為是傳回非零結束碼。 
- --force-upload
- 
					指定此選項以上傳成品,即使它們符合 Amazon S3 儲存貯體中的現有成品。比對成品會遭到覆寫。 
- --guided, -g
- 
					指定此選項,讓 AWS SAMCLI使用提示來引導您完成部署。 
- --help
- 
					顯示此訊息並結束。 
- --image-repositories- TEXT
- 
					函數映射至其 Amazon ECR 儲存庫 URI。依邏輯 ID 參考函數。以下是範例: $sam deploy --image-repositoriesFunction1=123456789012.dkr.ecr.us-east-1.amazonaws.com/my-repo您可以在單一命令中多次指定此選項。 
- --image-repository- TEXT
- 
					此命令上傳函數映像的 Amazon ECR 儲存庫名稱。使用 Image套件類型宣告的函數需要此選項。
- --kms-key-id- TEXT
- 
					用來加密 Amazon S3 儲存貯體中靜態成品的 AWS Key Management Service (AWS KMS) 金鑰 ID。如果您未指定此選項,則 AWS SAM 會使用 Amazon S3-managed加密金鑰。 
- --metadata
- 
					要連接到範本中參考之所有成品的中繼資料映射。 
- --no-execute-changeset
- 
					指出是否套用變更集。如果您想要在套用變更集之前檢視堆疊變更,請指定此選項。此命令會 AWS CloudFormation 建立變更集,然後結束而不套用變更集。若要套用變更集,請執行相同的命令,而不使用此選項。 
- --no-progressbar
- 
					將成品上傳至 Amazon S3 時,請勿顯示進度列。 
- --notification-arns- LIST
- 
					與堆疊建立 AWS CloudFormation 關聯的 Amazon Simple Notification Service (Amazon SNS) 主題 ARNs 清單。 
- --on-failure [ROLLBACK | DELETE | DO_NOTHING]
- 
					指定堆疊無法建立時要採取的動作。 以下是可用的選項: - 
							ROLLBACK– 將堆疊復原至先前的已知良好狀態。
- 
							DELETE– 如果存在堆疊,則將堆疊轉返至先前的已知良好狀態。否則, 會刪除堆疊。
- 
							DO_NOTHING– 既不會轉返,也不會刪除堆疊。效果與 的效果相同--disable-rollback。
 預設行為是 ROLLBACK。注意您可以指定 --disable-rollback選項或--on-failure選項,但不能同時指定兩者。
- 
							
- --parameter-overrides- LIST
- 
					包含 AWS CloudFormation 參數的字串會覆寫編碼為鍵值對的字串。每個覆寫都使用格式 ParameterKey=name,ParameterValue=value。多個覆寫會以空格分隔。以下是兩個範例:$sam deploy --parameter-overridesParameterKey=value1,ParameterValue=value2$sam deploy --parameter-overridesParameterKey=value1,ParameterValue=value2 ParameterKey=hello,ParameterValue=world ParameterKey=apple,ParameterValue=banana
- --profile- TEXT
- 
					從您的登入資料檔案中取得 AWS 登入資料的特定設定檔。 
- --region- TEXT
- 
					AWS 區域 要部署到的 。例如 us-east-1。 
- --resolve-image-repos
- 
					自動建立 Amazon ECR 儲存庫,以用於封裝和部署非引導式部署。此選項僅適用於具有 PackageType: Image指定 的函數和層。如果您指定--guided選項,則 會 AWS SAMCLI忽略--resolve-image-repos。注意如果 使用此選項 AWS SAM 自動為函數或 layer 建立任何 Amazon ECR 儲存庫,而您稍後將這些函數或 layer 從 AWS SAM 範本中刪除,則會自動刪除對應的 Amazon ECR 儲存庫。 
- --resolve-s3
- 
					自動建立 Amazon S3 儲存貯體,用於封裝和部署非引導式部署。如果您指定 --guided選項,則 AWS SAM CLI 會忽略--resolve-s3。如果您同時指定--s3-bucket和--resolve-s3選項,則會發生錯誤。
- --role-arn- TEXT
- 
					套用變更集時 AWS CloudFormation 擔任之 IAM 角色的 Amazon Resource Name (ARN)。 
- --s3-bucket- TEXT
- 
					此命令上傳 AWS CloudFormation 範本的 Amazon S3 儲存貯體名稱。如果您的範本大於 51,200 個位元組,則需要 --s3-bucket選項或--resolve-s3選項。如果您同時指定--s3-bucket和--resolve-s3選項,則會發生錯誤。
- --s3-prefix- TEXT
- 
					新增至上傳到 Amazon S3 儲存貯體之成品名稱的字首。字首名稱是 Amazon S3 儲存貯體的路徑名稱 (資料夾名稱)。 
- --save-params
- 
					將您在命令列提供的參數儲存至 AWS SAM 組態檔案。 
- --signing-profiles- LIST
- 
					用來簽署部署套件的簽署設定檔清單。此選項會取得索引鍵/值對的清單,其中索引鍵是要簽署的函數或 layer 的名稱,而值是簽署描述檔,選用的描述檔擁有者以 分隔 :。例如FunctionNameToSign=SigningProfileName1 LayerNameToSign=SigningProfileName2:SigningProfileOwner。
- --stack-name- TEXT
- 
					(必要) 您要部署的 AWS CloudFormation 堆疊名稱。如果您指定現有的堆疊,則命令會更新堆疊。如果您指定新的堆疊,則命令會建立它。 
- 
					要與建立或更新的堆疊建立關聯的標籤清單。 AWS CloudFormation 也會將這些標籤傳播到堆疊中支援該標籤的資源。 
- --template-file, --template, -t- PATH
- 
					範本 AWS SAM 所在的路徑和檔案名稱。 注意如果您指定此選項,則 AWS SAM 只會部署範本及其指向的本機資源。 
- --use-json
- 
					AWS CloudFormation 範本的輸出 JSON。預設輸出為 YAML。 
範例
如需使用 sam deploy 子命令的詳細範例和深入演練,請參閱 使用 部署簡介 AWS SAM。