Azure 網站服務擴充套件

原文發表於 Azure Web Sites Extensions

Daria Grigoriu - Daria Griguriu - Azure Web Sites Extensions - Img6

每一個 Azure 網站服務(Website)都有一個擴充套件管理服務的功能,讓您可以藉著這個強大的工具部署網站的擴充套件,這些工具涵蓋的範圍很廣,從 Visual Studio Online 的線上編輯器,一直到可以管理網站連接的資源,如:MySQL 資料庫的工具(phpMyAdmin)都有。現在能用的擴充套件可以在 Azure 預覽的新管理介面取得:

Daria Grigoriu - Daria Griguriu - Azure Web Sites Extensions - Img1

您可以參考這個頁面顯示的步驟來為您的網站服務安裝擴充套件,另外您也可以從 Site Extension Gallery https://www.siteextensions.net/ 來上傳擴充套件到您的網站服務之中。

處理既有提供的網站擴充套件

在新的 Azure 預覽管理介面中,您可以在每個網站服務的 Configuration 部份來處理網站擴充套件,打開的畫面會像這樣:

Daria Grigoriu - Daria Griguriu - Azure Web Sites Extensions - Img2

按下 ADD 按鈕後,就可以在清單中選擇要增加的擴充套件,每一個擴充套件下都有註明發佈者的名稱、使用規範等等,安裝之前必須瞭解並且同意使用規範才能繼續。

安裝完畢後,擴充套件會被安裝在  %HOME%\SiteExtensions 目錄下,要注意的是,加入擴充套件後網站會重新啟動以便載入擴充套件。

Daria Grigoriu - Daria Griguriu - Azure Web Sites Extensions - Img3

您可以在安裝的擴充套件列表上,按右鍵或是展開後再選擇不同的按鈕來進行管理

Daria Grigoriu - Daria Griguriu - Azure Web Sites Extensions - Img4

安裝新的擴充套件

您想要建立您自己的擴充套件嗎?我們正努力讓 Azure 的客戶都能自己建立專屬的網站擴充套件。

網站擴充套件(site extension)其實就是一個 Web App 加上一些 metadata 所組成,它可以使用所有 Azure 網站服務所支援的技術(如: ASP.NET, PHP, Python, Node.js, Java)來開發,您可以參考這份文件來瞭解如何開發網站擴充套件,若專案範本沒有建立 applicationHst.xdt 做設定,您可以自行建立,用來設定應用程式以及虛擬目錄的環境。

網站擴充套件會包裝成一個 NuGet 套件格式(參考),您可以從這裡下載 NuGet 命令列工具來打包簡單的套件,也可以從這裡下載這個範例套件的程式碼。

  1. 建立一個與擴充套件名稱相同的資料夾。

  2. 把 web app 放在資料夾下的 Content 資料夾中。

  3. 建立一個 NuSpec 檔案來描述使用規範及版權聲明,可以參考這個檔案

  4. 使用下面的指令打包 NuGet 套件

     nuget pack example.nuspec
    

您可以在網站擴充套件的入口網站 https://www.siteextensions.net/ 提交一個開發完成的 NuGet 擴充套件,提交前必須註冊一個帳號。

Daria Grigoriu - Daria Griguriu - Azure Web Sites Extensions - Img5

註冊帳號或登入帳號後,就可以進行提交及驗證了

Daria Grigoriu - Daria Griguriu - Azure Web Sites Extensions - Img6

開發 Azure 網站擴充套件可以讓更多 Azure 網站服務受惠,也能讓您獲得成就感,並且隨時可以在擴充套件網站 https://www.siteextensions.net/ 上追蹤有多少人下載安裝您的套件,開發完成也別忘了用力宣傳它!