Windows Container Tutorial

2022-08-27

參考 learn.microsoft 的教學,驗證在 Windows Server 使用 Windows Container。

logo

說明

測試的環境是 Windows Server 2019。

Docker 容器引擎原本是限定在 Linux 環境使用,而後來 Dcoker 推出 Docker for Windows,藉由 Hyper-V 或者是 Subsystem for Linux 的方式提供服務。

關於 Docker for Windows 可以參考之前的筆記 Docker Tutorial 😃

而在 2016 年,微軟提出 Windows Container,不再需要 Linux 作為容器底層,並且可以跑 .NET Framework 相關的應用程式,同時仍支援 Docker API,讓原本習慣使用 Docker 指令的使用者不需要重新學習。

此外 Windows Container 的技術又可以再分為 Windows Server Containers 以及 Hyper-V Contianers,差別在於前者是共用 Windows Kernel,使用資源較低但可能會有安全上的疑慮、後者則反之。

安裝 Docker & 啟用 Windows Container

Install-Module -Name DockerMsftProvider -Repository PSGallery -Force
Install-Package -Name docker -ProviderName DockerMsftProvider

完成安裝之後,需要重新啟動伺服器

Restart-Computer -Force

如果要更新 Docker 的版本:

Install-Package -Name Docker -ProviderName DockerMsftProvider 
  -Update -Force

執行容器

docker pull mcr.microsoft.com/windows/nanoserver:ltsc2022

尚需要實驗與釐清

  • 如何包裝新的 Image
  • 如何從 Visual Studio 開發 .NET Framework 專案到包裝為 Image
  • Image 是否一定要放在第三方的 Hub (Docker Hub or Azure Container Registry)
  • 上述的作業如何結合 Azure DevOps 設定 CI & CD Pipelines

持續編輯中 🧙‍♂️

參考資料

Windows Container Quickstarts | learn.microsoft