Windows server 2016 下配置 Docker

本教程适用于通过 windows 8 以上系统自带的 hyper-v 来安装系统为 windows server 2016 的虚拟机,然后在虚拟机中配置 Docker

写教程时的环境:win10.1067

1.找到并开启 hyper-v

2.我们先在“操作”里新建一个“虚拟交换机”来让我们的虚拟机能够上网

建议选择外部,配置起来方便

3."指定代数"建议选择第二代

选择我们刚才设置的虚拟交换机

其余的都和我们在其他虚拟机软件中新建虚拟机一样,设置光驱之类的

4.虚拟机设置完成后,你可以选中虚拟机然后在右边的设置中设置更详细的参数,如 CPU 的核数,是否开机自启动等

5.设置完成后,就能启动虚拟机了

虚拟机启动后不会弹出运行画面,你需要点击上一部“设置”上面的“连接”来连接到虚拟机

6.进入虚拟机后

你添加 hyper-v 时,系统会提示你没有开启虚拟化

这个时候你要用管理员开启 powershell,输入

Set-VMProcessor -VMName server2016 -ExposeVirtualizationExtensions $true

命令中的 server2016 是我虚拟机的名字,你们改为自己虚拟机的名字即可

在 hyper-v 管理器中没有开启 CPU 虚拟化的地方,只能通过这条命令来实现。

7.hyper-v 安装完毕后,更新系统,保持系统为最新版本后就能开始安装 docker 了

server 2016 中的 docker 和 win10 下的安装方式又不一样了,要在以管理员身份运行的 powershell 中运行命令来安装

Install-PackageProvider -Name NuGet -MinimumVersion 2.8.5.201 -Force

Install-Module -Name DockerMsftProvider -Force

Install-Package -Name docker -ProviderName DockerMsftProvider -Force

Restart-Computer -Force

8.在 windows server 2016 中还要设置下防火墙来确保 docker 能上网

# Open firewall port 2375
netsh advfirewall firewall add rule name="docker engine" dir=in action=allow protocol=TCP localport=2375

# Configure Docker daemon to listen on both pipe and TCP (replaces docker --register-service invocation above)
Stop-Service docker
dockerd --unregister-service
dockerd -H npipe:// -H 0.0.0.0:2375 --register-service
Start-Service docker

9.测试

在 powershell 中输入 docker version 应该会出现

Client:
Version:      1.12.1
API version:  1.24
Go version:   go1.6.3
Git commit:   23cf638
Built:        Thu Aug 18 17:32:24 2016
OS/Arch:      windows/amd64
Experimental: true

Server:
Version:      1.12.2-cs2-ws-beta
API version:  1.25
Go version:   go1.7.1
Git commit:   62d9ff9
Built:        Fri Sep 23 20:50:29 2016
OS/Arch:      windows/amd64

10.安装第一个 docker 容器

使用 docker run 来部署一个,net core helloworld 官方应用程序镜像

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://blog.docker.com/2016/09/build-your-first-docker-windows-server-container/open in new windowhttp://blog.csdn.net/candy_ilync/article/details/52794834open in new window

Windows server 2016 下载地址:

https://www.microsoft.com/en-us/evalcenter/evaluate-hyper-v-server-2016open in new window