windows server 2016安裝docker的方法步驟
最近微軟發(fā)布了windows server 2016,并原生支持docker,本文通過一系列的步驟,來學習怎么在windows server 2016安裝docker。
Windows支持兩種不同類型的容器,即 Windows Server 容器和 Hyper V 容器。 這兩種類型的容器的使用方式相同,也支持相同的容器映像。 但是它們的實現(xiàn)機制不同,提供了不同的安全隔離級別
Windows Server 容器 - 非常類似與Linux中的容器,使用通過命名空間、資源控制實現(xiàn)進程隔離。每個Windows Server容器都與宿主機共享同一個內(nèi)核。
Hyper V 容器 - 每個容器都運行在一個高度優(yōu)化的Hyper V虛擬機中,所以容器擁有獨立的內(nèi)核。這樣容器的隔離性會更好,但是啟動速度會慢一些,其資源占用也會增加。
如果你手邊沒有Windows Server 2016的環(huán)境,我們也可以在Windows 10 操作系統(tǒng)上,使用Docker for Windows來開始實驗。
下面引用Docker 中文指南中的幾個提示:
提示1:Docker 已經(jīng)在windows7.1和windows 8上通過測試,當然它也可以在低版本的windows上使用。但是你的處理器必須支持硬件虛擬化。
提示2:Docker 引擎使用的是Linux內(nèi)核特性,所以我們需要在 Windows 上使用一個輕量級的虛擬機 (VM) 來運行 Docker。我們使用 Windows的Docker客戶端來控制 Docker 虛擬化引擎的構(gòu)建、運行和管理 。
提示3:為了簡化這個過程,我們設(shè)計了一個叫 Boot2Docker 的應(yīng)用程序,你可以通過它來安裝虛擬機和運行 Docker。
提示4:雖然你使用的是 Windows 的 Docker 客戶端,但是 docker 引擎容器依然是運行在 Linux 宿主主機上(現(xiàn)在是通過Virtual box)。直到我們開發(fā)了 windows 版本的 Docker 引擎,你只需要在你的 Windows 主機上啟動一個 Linux 容器。
Windows安裝docker環(huán)境的基本要求:
(1)必須是64位操作系統(tǒng),win7或者更高 (推薦Windows 10/server 2016 因為新版集成了很多新組件)
(2)支持“ Hardware Virtualization Technology”,并且,“virtualization ”可用(也就是在BIOS啟用VT參數(shù))
1、下載 windows server 2016 180天評估版本。
地址:https://www.microsoft.com/en-us/evalcenter/evaluate-windows-server-2016?i=1
Windows Server 2016 官方簡體中文正式版 64位(附激活序列號密鑰)
2、安裝windows server 2016
安裝過程類似于window10 ,可根據(jù)需要是否安裝GUI。
3、更新系統(tǒng)到最新版本
打開powershell 輸入命令“sconfig",選擇6下載并安裝更新。
=============================================================================== 服務(wù)器配置 =============================================================================== 1) 域/工作組: 工作組: WORKGROUP 2) 計算機名: WIN-GHUNK220OOQ 3) 添加本地管理員 4) 配置遠程管理 已啟用 5) Windows 更新設(shè)置: 僅下載 6) 下載并安裝更新 7) 遠程桌面: 已啟用(所有客戶端) 8) 網(wǎng)絡(luò)設(shè)置 9) 日期和時間 10) 遙測設(shè)置基本 11) Windows 激活 12) 注銷用戶 13) 重新啟動服務(wù)器 14) 關(guān)閉服務(wù)器 15) 退出到命令行
4、安裝docker
首先安裝oneget PowerShell模塊
Install-Module -Name DockerMsftProvider -Repository PSGallery -Force
再使用oneget 安裝最新版本docker
Install-Package -Name docker -ProviderName DockerMsftProvide
powershell中詢問你是否確實要安裝來自“DockerDefault”的軟件,選擇“A”全是。
PS C:\> Install-Module -Name DockerMsftProvider -Repository PSGallery -Force PS C:\> Install-Package -Name docker -ProviderName DockerMsftProvider 程序包來自未標記為“受信任”的程序包源。 是否確實要安裝來自“DockerDefault”的軟件? [Y] 是(Y) [A] 全是(A) [N] 否(N) [L] 全否(L) [S] 暫停(S) [?] 幫助 (默認值為“N”): A 警告: A restart is required to start docker service. Please restart your machine. 警告: After the restart please start the docker service. Name Version Source Summary ---- ------- ------ ------- Docker 1.12.2-cs2-ws... DockerDefault Contains the CS Docker Engine for use with Windows ...
安裝完成重啟計算機
Restart-Computer -Force
在powershell中輸入,docker version,顯示docker版本
PS C:\Users\Administrator> docker version Client: Version: 1.12.2-cs2-ws-beta API version: 1.25 Go version: go1.7.1 Git commit: 050b611 Built: Tue Oct 11 02:35:40 2016 OS/Arch: windows/amd64 Server: Version: 1.12.2-cs2-ws-beta API version: 1.25 Go version: go1.7.1 Git commit: 050b611 Built: Tue Oct 11 02:35:40 2016 OS/Arch: windows/amd64
5、安裝第一個docker容器
使用docker run 部署一個.net core hellworld官方應(yīng)用程序鏡像
docker run microsoft/dotnet-samples:dotnetapp-nanoserver
會看到跟linux部署容器一樣的界面
PS C:\Users\Administrator>docker run microsoft/dotnet-samples:dotnetapp-nanoserver Unable to find image 'microsoft/dotnet-samples:dotnetapp-nanoserver' locally dotnetapp-nanoserver: Pulling from microsoft/dotnet-samples 5496abde368a: Downloading [===> ] 14.6 MB/242.6 MB 482ab31872a2: Downloading [=========> ] 19.46 MB/100.5 MB df00079eb06a: Download complete 79730b122a0a: Download complete e2f5db19e1d2: Downloading [===> ] 2.293 MB/32.48 MB c34ebc4d7351: Waiting 8c97c2cd28c1: Waiting 6bd62be70d1c: Waiting 9b45b5fe5811: Waiting
參考文章:
https://msdn.microsoft.com/virtualization/windowscontainers/containers_welcome
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
解決docker報錯:docker:invalid?reference?format.
在導(dǎo)入鏡像的時候出現(xiàn)問題:invalid reference format,這里總結(jié)下,這篇文章主要給大家介紹了關(guān)于解決docker報錯:docker:invalid?reference?format的相關(guān)資料,需要的朋友可以參考下2024-01-01Docker鏡像推送(push)到Docker Hub的實現(xiàn)
這篇文章主要介紹了Docker鏡像推送(push)到Docker Hub的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2019-09-09docker imageid 和 digest區(qū)別解析
在Docker中,image ID和digest是兩個不同的標識符,用于唯一標識和引用Docker鏡像的不同方面,這篇文章主要介紹了docker imageid 和 digest區(qū)別,需要的朋友可以參考下2023-06-06