Azure Web App on Linux
邁向真正跨平台的 PaaS 維運之路
多奇數位創意有限公司
技術總監 黃保翕 ( Will 保哥 )
部落格:http://blog.miniasp.com/
介紹 App Service on Linux
全新的 App Service 服務 (公開預覽)
• 原生 Linux 作業系統
• 採用 Docker 容器技術
• 允許執行任意自訂容器 (Linux Container)
• 可透過 FTP、Local Git、GitHub、Bitbucket 部署網站
• 可透過 App Service Plan 自動延展應用程式規模 (Scale up + Scale out)
目前支援的應用程式架構
Node.js
•4.5.0
•4.4.7
•6.2.2
•6.6.0
•6.9.3
4
PHP
•5.6.23
•7.0.6
.Net Core
•1.0
Ruby
• 2.3
https://hub.docker.com/r/appsvc/
目前 Kudu 支援的能力
•Environments 環境變數查詢
•Deployments 發行部署 API
•Basic consoles 基本 Bash 主控台
5
目前 Azure Portal 支援的功能
•僅支援部分功能 (所有不支援的功能會自動隱藏)
•某些功能尚未完善,僅有部分功能 (會陸續提供)
• Virtual network integration, Azure Active Directory/third-
party authentication, Kudu site extensions
6
目前公開預覽支援的地區
•West US
•West Europe
•Southeast Asia
7
Web App on Linux 基本限制
•必須執行在獨立的 App Service Plan 上 (Linux)
•沒有 Free 或 Shared 等級 ( 目前有 50% 折扣 )
•不能建立在有 non-Linux Web App 的資源群組內
•.NET Core 應用程式必須事先編譯後上傳
8
體驗 App Service on Linux
大致步驟
•建立 Web App On Linux (preview) 服務
•選擇容器影像來源
•部署網站 (Optional)
Kudo 功能導覽
•Environments 環境變數查詢
•Deployments 發行部署 API
•Basic consoles 基本 Bash 主控台
11
自訂 Docker 容器
12Deploy Docker Containers to Azure Web Apps on Linux – Build Azure
training/webapp
dimkk/ng2-admin
Web App on Linux 容器偵錯技巧
•容器執行相關紀錄:/home/LogFiles/docker
13
Web App on Linux 注意事項
• 容器中的 /home 路徑會被 Kudo 蓋掉
• 預設網站根目錄:/home/site/wwwroot
• 所有 /home 目錄下的檔案都會自動在多台 VM 之間同步
• 容器內必須 EXPOSE 一個埠號才能讓 Web App 對外連線
• 在「應用程式設定」新增 PORT 也可以指定容器中對外的 Port (只能一個)
• 更新容器影像來源後,記得要停止後啟動才會生效
• 盡量不要用「內建」的 .NET Core 容器影像來源 (有點雷)
• 建議直接到 Docker Hub 取得容器影像 (或自訂容器)
• appsvc/dotnetcore:1.0.4-runtime (記得到 Source Repository 查看)
14
相關連結
• 官方文件
• Linux 上的 App Service 簡介
• 在 Linux 上的 Azure App Service Web Apps 中使用 .NET Core
• App Service on Linux Documentation
• Using a custom Docker image for App Service on Linux
• Azure App Service web apps on Linux FAQ
• Web Apps feedback forum ( 記得加 [Linux] 到發問主題上 )
• GitHub Repositories
• https://github.com/Azure-App-Service/
• Docker Hubs
• https://hub.docker.com/r/appsvc/
15

Azure Web App on Linux @ Global Azure Bootcamp 2017 Taiwan

  • 1.
    Azure Web Appon Linux 邁向真正跨平台的 PaaS 維運之路 多奇數位創意有限公司 技術總監 黃保翕 ( Will 保哥 ) 部落格:http://blog.miniasp.com/
  • 2.
  • 3.
    全新的 App Service服務 (公開預覽) • 原生 Linux 作業系統 • 採用 Docker 容器技術 • 允許執行任意自訂容器 (Linux Container) • 可透過 FTP、Local Git、GitHub、Bitbucket 部署網站 • 可透過 App Service Plan 自動延展應用程式規模 (Scale up + Scale out)
  • 4.
  • 5.
    目前 Kudu 支援的能力 •Environments環境變數查詢 •Deployments 發行部署 API •Basic consoles 基本 Bash 主控台 5
  • 6.
    目前 Azure Portal支援的功能 •僅支援部分功能 (所有不支援的功能會自動隱藏) •某些功能尚未完善,僅有部分功能 (會陸續提供) • Virtual network integration, Azure Active Directory/third- party authentication, Kudu site extensions 6
  • 7.
  • 8.
    Web App onLinux 基本限制 •必須執行在獨立的 App Service Plan 上 (Linux) •沒有 Free 或 Shared 等級 ( 目前有 50% 折扣 ) •不能建立在有 non-Linux Web App 的資源群組內 •.NET Core 應用程式必須事先編譯後上傳 8
  • 9.
  • 10.
    大致步驟 •建立 Web AppOn Linux (preview) 服務 •選擇容器影像來源 •部署網站 (Optional)
  • 11.
    Kudo 功能導覽 •Environments 環境變數查詢 •Deployments發行部署 API •Basic consoles 基本 Bash 主控台 11
  • 12.
    自訂 Docker 容器 12DeployDocker Containers to Azure Web Apps on Linux – Build Azure training/webapp dimkk/ng2-admin
  • 13.
    Web App onLinux 容器偵錯技巧 •容器執行相關紀錄:/home/LogFiles/docker 13
  • 14.
    Web App onLinux 注意事項 • 容器中的 /home 路徑會被 Kudo 蓋掉 • 預設網站根目錄:/home/site/wwwroot • 所有 /home 目錄下的檔案都會自動在多台 VM 之間同步 • 容器內必須 EXPOSE 一個埠號才能讓 Web App 對外連線 • 在「應用程式設定」新增 PORT 也可以指定容器中對外的 Port (只能一個) • 更新容器影像來源後,記得要停止後啟動才會生效 • 盡量不要用「內建」的 .NET Core 容器影像來源 (有點雷) • 建議直接到 Docker Hub 取得容器影像 (或自訂容器) • appsvc/dotnetcore:1.0.4-runtime (記得到 Source Repository 查看) 14
  • 15.
    相關連結 • 官方文件 • Linux上的 App Service 簡介 • 在 Linux 上的 Azure App Service Web Apps 中使用 .NET Core • App Service on Linux Documentation • Using a custom Docker image for App Service on Linux • Azure App Service web apps on Linux FAQ • Web Apps feedback forum ( 記得加 [Linux] 到發問主題上 ) • GitHub Repositories • https://github.com/Azure-App-Service/ • Docker Hubs • https://hub.docker.com/r/appsvc/ 15

Editor's Notes

  • #11 首先示範 PHP 5.6 與 Kudo Bash -> p.php -> <?php phpinfo(); ?>
  • #13 Deploy Docker Containers to Azure Web Apps on Linux – Build Azure https://buildazure.com/2016/11/18/deploy-docker-containers-to-azure-web-apps-on-linux/ Using a custom Docker image for App Service on Linux https://docs.microsoft.com/en-us/azure/app-service-web/app-service-linux-using-custom-docker-image