The Will Will Web

記載著 Will 在網路世界的學習心得與技術分享

重新認識 Azure App Service 與 App Service Plan 各種部署模式與執行方式

我每次需要部署網站到 App Service Plan on Linux 都會遇到各種問題,所以我大部分都會選擇 Windows 平台來部署網站應用程式,因為我對 IIS 非常熟悉,所以遇到問題通常都很容易可以解決。最近我又再次遇到需要部署網站到 App Service Plan on Linux 執行,沒意外的再次發生了意外,所以這次決定不要逃避他,好好的研究一下 App Service Plan on Linux 的運作方式與相關細節。這篇文章我就來分享我的研究整理。

... 繼續閱讀 ...

如何使用 .NET 的 Azure AI Vision SDK 來替程式加上「視覺」功能

我最近寫了一個小程式,幫助我自動化審核 LINE 社群(OpenChat)的加入申請,由於 LINE 社群並沒有提供 API 可以串接,而我的審核數量又非常大,因此我就想到了透過 OCR 辨識的方式來進行自動化。不過找了幾個免費的 OCR 套件,都沒有辦法很可靠的識別截圖中的文字,直到我嘗試了 Azure AI Vision 服務才眼睛為之一亮,這套產品的 Image analysis 功能品質極高,費用也極低,實際開發出東西後,我覺得這個服務真的非常值得推薦給大家。這篇文章我就帶大家用 .NET 8 簡單上手這個好用的雲端服務!

... 繼續閱讀 ...

使用 Azure CLI 快速建立 Azure Container Instances 並連線到容器中測試

我們最近有一個客戶的網站功能出了一些小狀況,由於程式是用「容器」的方式執行,跑在 Azure Container Instances (ACI) 上,因此需要連到容器中查看一下狀況,有鑑於公司許多同事都沒有玩過 ACI 容器執行個體,所以我打算用這篇文章帶大家入門,一起來看看如何使用 Azure CLI 來操作 ACI 中的容器。

... 繼續閱讀 ...

如何在 Azure Web App 安裝 Seq 集中式記錄伺服器

Seq 是我最愛用的 Logging 工具,但官方的 Azure Installation 只有說明如何將 Seq 安裝在 VM (虛擬機器) 上 (IaaS),害我一直以為 Seq 沒辦法安裝在 Azure App Service 上面,但我又不想多建立一台 VM 專門跑 Seq,直到最近我發現原來在 Web App 安裝 Seq 是可行的,只要跑在「容器」就可以了。這篇文章我就來說明怎樣設定!👍

... 繼續閱讀 ...

如何解決 Azure SQL Elastic Pool 資料庫集區 Allocated space 已滿的問題

我公司有個 Azure SQL Elastic Pool 資料庫集區,我有 52 個資料庫,每個資料庫都蠻小的,最大的一個也才 5GB 左右,原本預設最大可用儲存空間為 50GB,但上周某一天開始就有個應用程式出現儲存空間使用量已滿等問題,讓我覺得十分詭異,查了一下資料庫用量也都還沒滿,還有許多剩餘空間才對,但就是有個資料庫要求更多空間,導致程式發生異常。今天我就來聊聊這個問題,以及我已經找到的解決方案!

... 繼續閱讀 ...

部署 Azure App Service 最簡單的方法:使用 cURL 直接部署 ZIP 或 URL

我們在設定 CD 持續部署的時候,有好多種方法可以部署檔案到 Azure App Service,早期比較常用的是部署 ARM 部署,但部署經常會遇到 Azure AD 設定 Service Principal 等權限問題。後來我們大多改用 Web Deploy 來部署,只要有發行設定檔(Publish Profile)就可以輕鬆部署,不過 .NET Core 的 DLL 經常會被鎖定而無法更新的問題也很討厭。近期我們都開始改用 ZIP 或 URL 部署,其部署方法不但簡單,而且部署速度快,部署時更不會遇到檔案鎖定等問題,實在非常不錯。這篇文章我就來介紹這個部署方法。

... 繼續閱讀 ...

如何將 Next.js 製作的網站以 Node.js 的方式部署到 Azure Web App

要將 Node.js 網站部署到 Azure Web App (Windows) 其實有點竅門,一般不熟悉 Windows / IIS 的開發人員要想把手邊的 Node.js 部署到 Azure Web App 通常都會卡關卡好久。這篇文章我就來說說我是如何將我最近翻譯的提示工程指南網站部署到 Azure Web App 的,而這是一個用 Next.js 開發的網站!

... 繼續閱讀 ...

如何讓 Node.js 應用程式在 GitHub Action 大幅提昇 CI/CD 執行效率

我手邊有個 Next.js 的應用程式,在設定 GitHub Action 的 CI/CD 自動部署到 Azure Web App 的過程,在 CI 的 actions/upload-artifact@v2 這個步驟花費了超級大量的時間上傳 node_modules 資料夾中的檔案,實在是太沒效率了。因此我改在上傳前壓縮整個目錄,結果整體 CI/CD 的時間直接從 26m 34s 降到 8m 58s 之多,部署效率大幅提升。今天這篇文章我就來說說我的寫法。

... 繼續閱讀 ...