其實 Windows Containers 都是以 Windows Server 為基礎的 base image 來運行的,但從 2021 年 9 月微軟發佈了 Updates to the Windows Container Runtime support 文章,預告了未來將不再使用 DockerMsftProvider API 來安裝 Docker EE (企業版) 軟體,之後預計會全部移轉到開源的 containerd、Moby 或即將轉付費方案的 Mirantis Container Runtime 等等。這幾天我就想說來研究一下如何用 containerd 來執行 Windows Container,結果根本就是在玩踩地雷,我研究了足足三天才搞定完整可成功運行 Windows Containers 的 containerd 容器環境!這篇文章我將分享我在 Windows Server 2022 實作的完整過程。
... 繼續閱讀 ...
當你想要對 IIS 站台調整許多設定,又怕調整到一半突然出問題,這時候會殘留許多調整到一半的設定,如果想要做到 IaC (Infrastructure as code) 自動化,這個問題就必須被解決。還好 IISAdministration 模組中有提供「交易」相關的 Cmdlets 可用,本篇文章就來說說如何使用它。
... 繼續閱讀 ...
IIS 是一個相對穩定的產品,從 Windows Server 2016 推出 IIS 10.0 之後,版號就不再更動,而且每次作業系統釋出新版本也只會微幅新增功能,因此整體架構並沒有任何變化。本篇文章將分享我在管理 IIS 容器的一些心得與技巧。
... 繼續閱讀 ...
官方的 mcr.microsoft.com/dotnet/framework/aspnet:4.8
容器映象,已經預先安裝好 Web Server (IIS)
與 ASP.NET 4.8
角色服務,但預設只有啟用一些最常見的 IIS 功能,如果你現有的 IIS 站台想要容器化,但又需要額外安裝角色服務的話,那你就可以參考本篇文章說明。
... 繼續閱讀 ...
若想將 ASP.NET 網站安裝至 Windows Containers 容器中,其實還算簡單,直接使用微軟官方提供的 mcr.microsoft.com/dotnet/framework/aspnet:4.8
容器映象就可以立即使用。但如果要另外安裝 SSL/TLS 憑證的話,那就顯的有點麻煩了,即便官方有提供簡易範例,但要調整為正式憑證的話,網路上似乎沒有完整的文章說明,本篇文章就來詳實記錄所有的技術細節。
... 繼續閱讀 ...
自從 Windows 核心版本 v14393 開始,也就是 Windows Server 2016 LTSC 與 Windows 10 年度更新版,正式開始支援 Windows 容器,這意謂著企業可以開始將傳統 Windows 應用程式正式容器化,透過容器化技術隔離應用程式,最大的優勢,就是容器技術會讓應用程式不會再遇到部署環境變更導致的任何問題。不過 Windows 核心版本不斷更新,也開始出現了相容問題,本篇文章將說明各種容器相容性的解決方案。
... 繼續閱讀 ...
Windows Container 的網路有時候會遇到一些奇怪的現象,尤其是在我這台筆電,因為實在安裝過太多版本,作業系統也升級好幾次,有時候為了演講也要調整本機網路設定,所以設定很亂也應該是正常的。這幾天我就發現升級到 Windows 10 版本 1903 之後,網路功能出了一點狀況,這次撰文的過程也徹底將 docker networking 做了深入的研究與理解,收穫頗豐!
... 繼續閱讀 ...
PowerShell 有個對開發人員非常不友善的預設值,就是 $ProgressPreference
這個偏好設定變數 (Preference Variables),他的預設值為 Continue
,也就是 Cmdlet 執行時預設會顯示 Cmdlet 的執行進度 (如果有進度列提示的話),這個進度列提示雖然很貼心地顯示在命令提示字元上,但卻會導致 Cmdlet 執行速度徹底被拖慢,慢到非常誇張,浪費了我們寶貴的生命。這篇文章就要告訴大家如何設定與調整,以便在日後可以更有效率的執行 PowerShell 命令!
... 繼續閱讀 ...
自從將我的 Windows 10 升級到周年更新後,發現有好多好玩的功能可以用,前陣子在玩 WSL (Windows Subsystem for Linux) ( Bash on Windows ),而最近則是把玩 Windows Containers 容器技術。今天這篇文章,主要想分享如何讓大家在自己的 Windows 10 電腦中同時安裝 Windows Containers 與 Linux Containers 環境,讓你在同一台開發主機上可以同時享受真正跨平台的容器支援。
... 繼續閱讀 ...