共用方式為


在 Azure 中建立從 GitHub 部署的函式應用程式

此 Azure Functions 範例指令碼會使用取用方案建立函式應用程式及其相關資源。 此指令碼也會設定您的函式程式碼,以便從公用 GitHub 存放庫持續部署。 也有已註解化的程式碼,可用於使用私人 GitHub 存放庫。

如果您沒有 Azure 帳戶,請在開始之前建立 免費帳戶

先決條件

範例指令碼

啟動 Azure Cloud Shell

Azure Cloud Shell 是免費的互動式 Shell,可讓您用來執行本文中的步驟。 它具有預先安裝和設定的共用 Azure 工具,可與您的帳戶搭配使用。

若要開啟 Cloud Shell,只要選取程式碼區塊右上角的 [試試看] 即可。 您也可以移至 https://shell.azure.com,從另一個瀏覽器索引標籤啟動 Cloud Shell。

當開啟 Cloud Shell 時,請確認已為您的環境選取 Bash。 後續的工作階段將會在 Bash 環境中使用 Azure CLI,請選取 [複製] 以複製程式碼區塊,並將其貼到 Cloud Shell 中,然後按 Enter 鍵加以執行。

登入 Azure

系統會在登入的初始帳戶下自動驗證 Cloud Shell。 使用下列指令碼使用不同的訂用帳戶登入,並將 subscriptionId 取代為您的 Azure 訂用帳戶識別碼。

如果您沒有 Azure 帳戶,請在開始之前建立 免費帳戶

subscription="subscriptionId" # Set Azure subscription ID here

az account set -s $subscription # ...or use 'az login'

如需詳細資訊,請參閱設定使用中訂用帳戶 (部分機器翻譯) 或以互動方式登入 (部分機器翻譯)。

執行指令碼


# Function app and storage account names must be unique.
let "randomIdentifier=$RANDOM*$RANDOM"
location=eastus
resourceGroup="msdocs-azure-functions-rg-$randomIdentifier"
tag="deploy-function-app-with-function-github"
storage="msdocs$randomIdentifier"
skuStorage="Standard_LRS"
functionApp=mygithubfunc$randomIdentifier
functionsVersion="4"
runtime="node"
# Public GitHub repository containing an Azure Functions code project.
gitrepo=https://github.com/Azure-Samples/functions-quickstart-javascript
## Enable authenticated git deployment in your subscription when using a private repo. 
#token=<Replace with a GitHub access token when using a private repo.>
#az functionapp deployment source update-token \
#  --git-token $token

# Create a resource group.
echo "Creating $resourceGroup in ""$location""..."
az group create --name $resourceGroup --location "$location" --tags $tag

# Create an Azure storage account in the resource group.
echo "Creating $storage"
az storage account create --name $storage --location "$location" --resource-group $resourceGroup --sku $skuStorage

# Create a function app with source files deployed from the specified GitHub repo.
echo "Creating $functionApp"
az functionapp create --name $functionApp --storage-account $storage --consumption-plan-location "$location" --resource-group $resourceGroup --deployment-source-url $gitrepo --deployment-source-branch main --functions-version $functionsVersion --runtime $runtime

# Connect to function application
curl -s "https://${functionApp}.azurewebsites.net/api/httpexample?name=Azure"

清除資源

使用下列命令來移除資源群組及所有與其相關聯的資源,除非您持續需要這些資源,則請使用 az group delete 命令。 這其中某些資源可能需要一些時間才能建立和刪除。

az group delete --name $resourceGroup

範例參考

下表中的每個命令都會連結至命令特定的文件。 此指令碼會使用下列命令:

Command 注意
請輸入命令:az group create 來建立群組。 建立用來存放所有資源的資源群組。
az storage account create(建立儲存帳戶) 建立函式應用程式所需的儲存體帳戶。
az functionapp create 在無伺服器取用方案中建立函式應用程式,並與 Git 或 Mercurial 存放庫產生關聯。

後續步驟

如需 Azure CLI 的詳細資訊,請參閱 Azure CLI 文件

您可以在 Azure Functions 文件中找到其他 Azure Functions CLI 指令碼範例。