我的電腦有安裝 WSL 2 與 Docker Desktop WSL 2 backend,這兩個分別各使用了一個 ext4.vhdx
虛擬硬碟,我在使用 WSL 2 與 Docker 一段時間之後,這兩個虛擬硬碟變的非常大,分別佔用了 39GB 與 79GB 之多,我想是時候來壓縮這兩個虛擬硬碟了。這篇文章我就來說明壓縮 vhdx 的方法。
... 繼續閱讀 ...
我經常推薦 Seq 這套記錄伺服器(Log Server),如果要將 ASP.NET Core 的 Log 全部送到 Seq 儲存的話,其實非常簡單,因為官方的 Seq.Extensions.Logging 套件預設就支援 Microsoft.Extensions.Logging
的擴充,提供一個現成的 Logging Provider 讓你很方便的將 Seq 快速加入到 ASP.NET Core 之中。這篇文章我就來說說這個設定的過程。
... 繼續閱讀 ...
我們在設定 CD 持續部署的時候,有好多種方法可以部署檔案到 Azure App Service,早期比較常用的是部署 ARM 部署,但部署經常會遇到 Azure AD 設定 Service Principal 等權限問題。後來我們大多改用 Web Deploy 來部署,只要有發行設定檔(Publish Profile)就可以輕鬆部署,不過 .NET Core 的 DLL 經常會被鎖定而無法更新的問題也很討厭。近期我們都開始改用 ZIP 或 URL 部署,其部署方法不但簡單,而且部署速度快,部署時更不會遇到檔案鎖定等問題,實在非常不錯。這篇文章我就來介紹這個部署方法。
... 繼續閱讀 ...
從 ASP.NET Core 7.0 開始,.NET SDK 7 內建支援 dotnet user-jwts
命令,可以幫助你管理開發時期所需的金鑰與 JWT Tokens,我深入的把玩了一下,發現還真的好用,這篇文章我就來說說怎樣使用。
... 繼續閱讀 ...
ASP.NET Core Data Protection 提供了一組加密 API (cryptographic API) 來保護資料安全,其中還自動包含了密鑰管理(key management)與密鑰更換(key rotation)等機制。這套技術主要用來長期取代 .NET Framework 的 ASP.NET 1.x ~ 4.x 中 web.config
定義的 <machineKey>
元素,我研究之後發現這套機制不但簡單好上手,背後的金鑰管理也有一定程度的複雜度,可算是相當不錯的資料保護解決方案。這篇文章我想帶大家快速上手 ASP.NET Core 資料保護機制,並透過一個簡單範例說明他的加解密的用法。
... 繼續閱讀 ...
今天我體驗了 GitLab EE on Docker 的安裝程序,我覺得文件寫的相當不錯,安裝的過程也頗為順利,只是在 Ubuntu 22.04 LTS 還是踩到了一些地雷,有些注意事項在官方文件上並沒有詳細提及,這篇文章我就帶大家來體驗一下完整的安裝設定流程。
... 繼續閱讀 ...
昨天有個五年前的專案,由於正式環境出了一點狀況想要重新部署,但卻發現 CI 已經無法正常執行,不是版本不對就是套件異常,弄了好幾個小時才搞定。這篇文章我想分享一下這次處理的經驗與心得分享。
... 繼續閱讀 ...
今天我嘗試把 GitLab 安裝到我的 Ubuntu 22.04 LTS 作業系統中,過程頗為順利,安裝體驗還不錯,我也特別記錄下完整的安裝設定過程,並透過這篇文章分享。
... 繼續閱讀 ...
我們都知道 OAuth 2.0 提供了一系列授權的流程標準,但各家 OAuth 2.0 提供者通常都有各自的授權管理機制,這部分並沒有規範在 OAuth 2.0 規格中,因此不同平台之間的實作差異相當大。今天我以「使用者」的角度來看「授權」這件事,當我們授權給「用戶端」應用程式之後,若想撤銷授權,這篇文章特別整理各個不同平台撤銷權限的主要網址。
... 繼續閱讀 ...