The Will Will Web

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

快速體驗建構在 Dapr 架構下的微服務應用程式並部署到 Kubernetes 叢集

Dapr (Distributed Application Runtime) 是一個分散式應用程式的引擎(Runtime),他幫助開發者能在微服務架構下建構事件驅動(event-driven)、高彈性(resilient)的分散式應用程式。他可以幫助你在打造微服務架構的同時,又能徹底簡化應用程式開發的複雜度,大幅降低服務與服務之間的耦合性,真的是非常漂亮!這篇文章我將分享如何透過一個簡單的例子(hello-kubernetes),讓大家瞭解 Dapr 的運作原理。

... 繼續閱讀 ...

如何使用 Certbot 命令列工具建立免費的 TLS/SSL 頂層網域憑證

許多有在玩 Angular 前端框架的人都知道,目前的 Angular 官網的正體中文版(https://angular.tw)都是由我負責維護。該網站我目前架設於 Azure App Service 上,我原本想用 Azure 上目前免費的 App Service 受控憑證,可惜他並不支援「裸網域」(naked domains),因此我就必須要改申請免費的 Let's Encrypt 網站伺服器憑證。

... 繼續閱讀 ...

ASP.NET Core 如何紀錄 Entity Framework Core 5.0 自動產生的 SQL 命令

在最近的幾個 Entity Framework Core 版本,對於 Logging (紀錄) 的撰寫方式一直在改變,大致上可區分成 EF Core 2.1, EF Core 3.0+EF Core 5.0 三種版本,這意味著你從網路上找到的資訊,很有可能是舊的,但很多人無法區別其差異,因為舊的寫法到了 EF Core 5.0 依然可以用,只是會被標示棄用而已。你應該也可以想像得到,越新的 EF Core 版本,寫法就會更簡單的,這篇文章我就來說說幾種不同的紀錄方法。

... 繼續閱讀 ...

使用 .NET Generic Host 建立 Console 主控台應用程式 (.NET Core 3.1+)

我們會將 .NET Generic Host 用在 ASP.NET Core 或 Worker Service (背景服務) 這類需要運行在長時間執行的應用程式中。不過,若只是僅執行一次的這種單純的 Console 主控台應用程式適合用 .NET Generic Host 來建立應用程式架構嗎?是的,當然適合,而且還有很多附加的好處。

... 繼續閱讀 ...

Office 365 管理系列:升級通訊群組為群組之後的 PowerShell 命令變化

前陣子 Office 365 管理介面建議我將「通訊群組」(Distribution List) (DL) 全面升級為「群組」(Group),但我在升級完成後,我現有的 PowerShell 命令就失效了,因為 Cmdlet 命令不一樣了,這篇文章來說說其差異之處。

... 繼續閱讀 ...

新手上路 C# 原始碼產生器 (Source Generators)

最近迷上 C# 原始碼產生器 (Source Generators) 這門相當新穎的技術,跟以往常用的 T4 (Text Template Transformation Toolkit) 產生器技術不太一樣,這個 Source Generators 是屬於 Roslyn 編譯器的技術之一,讓你在專案建置的過程中,可以對正在編譯的 C# 原始碼進行增補,動態加入「額外」的原始碼,最後再編譯在一起,非常神奇又實用的技術,讓人非常有想像空間! 👍

... 繼續閱讀 ...

ASP.NET MVC 5 搭配 EF6 無法啟用 MvcBuildViews 建置檢視頁面的解法

今天在示範 MSBuild 如何設定 MvcBuildViews 屬性時,發現只要有 *.edmx 存在於專案中,建置的時候就會導致出現 Could not load type 'System.Data.Entity.Design.AspNet.EntityDesignerBuildProvider' 的問題,這個問題想從 Visual Studio 2019 裡面很難看出個端倪,必須改用 MSBuild 才能看出脈絡。今天這篇文章,我將分享這個問題的細部分析,並提供解決方案。

... 繼續閱讀 ...

OKD (OpenShift Origin) 3.11 與 Ubuntu 18.04 LTS 建置筆記

最近因為有客戶的 Infra 環境採用 OKD (The Community Distribution of Kubernetes that powers Red Hat OpenShift) 平台,為了能夠在我公司建立一套跟客戶一樣的環境,所以就自行架設了一套來用,大約花了兩天時間研究,雖然建置的過程不太順利,但發現越玩越熟就越覺得好用。還好我已經有 Kubernetes 的底子在,研究 OKD 其實觸類旁通,雖然有卡關,但還好都有解決。本篇文章就分享我的 OKD 3.11 建置過程與心得!

... 繼續閱讀 ...

存取 Azure Container Registry (ACR) 的多種認證授權方法

Azure Container Registry (ACR) 是 Azure 雲端平台非常重要的基礎建設,不但可以用來儲存 Docker Images,也可以用來儲存 Helm Charts 在上面。除此之外,企業所需的身份認證授權功能也相當完整,但只要扯到認證授權,事情就會複雜許多。這篇文章我將深入探討 ACR 各種不同的認證授權方法,幫助企業導入 ACR 使用。

... 繼續閱讀 ...