簡單來說，「Docker」本來是 dotCloud 公司內部的一個業餘專案，並採用 Google 的 Go 語言進行實作的產品。後來 dotCloud 公司將此專案加入 Linux 基金會並在 GitHub 上進行維護，迅速受到開發人員的喜愛，甚至 dotCloud 公司改名為 Docker Inc。有關 Docker 的一些歷史及觀念介紹因為《Docker — 從入門到實踐­》已經很清楚的說明，在此便不再贅述。此外，有時間也可以看一些相關影片：
雖然，在 Windows 作業系統中導入 Docker / Container 容器環境，但是整個實作技術跟 Linux 是完全不同的。簡單來說，Linux Image 是無法運作在 Windows Server Container 當中的，而 Windows Image 也無法運作在 Linux Container 容器環境，因為是採用「不同 API (Windows API vs Linux API)」運作環境，那麼我們來看看有哪些根本上的不同：
Control Group： 控制群組，針對共享資源進行隔離並管控硬體資源的使用 (例如，管理記憶體、檔案快取、CPU、磁碟 I/O…等使用率)。
Namespaces： 命名空間，確保每個容器都有單獨的命名空間，讓容器之間的運作互相不受影響。
AUFS： 檔案系統，不同容器可以共享基礎的檔案系統層，同時實現分層功能並將不同目錄掛載到同一個虛擬檔案系統中。
Job Objects： 類似 Linux 的控制群組機制。
Object Namespace、Process Table、Networking： 類似 Linux 的命名空間機制。
NTFS： 每個運作的容器各自擁有 1 份 NTFS 分區表，並搭配虛擬區塊儲存裝置來建立容器多層式檔案系統，接著再利用 Symlink 運作機制把不同層的檔案對應到 Host 環境檔案系統內的實際檔案，以便減少虛擬區塊儲存裝置所占用的儲存空間。
微軟設計 2 種不同的 Container 容器環境，以便因應不同的環境的運作需求。同時，不同的 Windows 作業系統版本支援不同的 Container 容器環境 (例如，Windows 10 並不支援 Windows Server Container，所以用 Windows 10 玩的話必須要先安裝 Hyper-V 功能才行)。
那麼，我們概略了解一下 Windows Server Container 及 Hyper-V Container 有哪些不同：
Windows Server Container： 共用系統核心資源 (與 Linux Container 類似)。
Hyper-V Container： 獨立系統核心資源。Hyper-V 容器並非傳統的 Hyper-V VM 虛擬主機，而是運作 Windows Server Container 的特殊虛擬主機器，並且具備獨立的系統核心、Guest 運算服務、基礎系統執行程序……等。
首先，我們安裝 OneGet Provider PowerShell 模組，然後使用 OneGet 安裝最新版的 Docker (包含安裝 Windows Feature 中的 Container)，當 PowerShell 詢問是否要信任封裝來源 'DockerDefault' 時，輸入 Y 或 A 以便繼續安裝程序。當安裝作業完成後，系統也提示你應該重新啟動電腦以便套用生效。
裝好 Docker 容器環境並重新啟動後，便會發現多出「vEthernet (HNS Internal NIC)」 網段就是 172.x.x.x / 255.255.240.0，後續在討論 Docker Network 時再來深入了解這部分。
安裝好 Windows Server Container 容器環境後，便可以透過「docker info」指令查看 Docker 容器環境的運作資訊：
那麼，讓我們開始使用 Docker 容器環境吧，不免俗的第 1 個範例就是透過 Docker 容器環境執行列出字串「Welcome to using .NET Core!」吧。在這項練習中，您將從 Docker Hub 登錄下載預先建立的 .NET 範例映像，並部署執行 .Net Hello World 應用程式的簡單容器。
同樣的，此時可以透過「docker images」指令查看已經下載的 Docker 映像檔資訊。