最近微软发布了windows server 2016,并原生支持docker,本文通过一系列的步骤,来学习怎么在windows server 2016安装docker。
Windows支持两种不同类型的容器,即 Windows Server 容器和 Hyper V 容器。 这两种类型的容器的使用方式相同,也支持相同的容器映像。 但是它们的实现机制不同,提供了不同的安全隔离级别
Windows Server 容器 - 非常类似与Linux中的容器,使用通过命名空间、资源控制实现进程隔离。每个Windows Server容器都与宿主机共享同一个内核。
Hyper V 容器 - 每个容器都运行在一个高度优化的Hyper V虚拟机中,所以容器拥有独立的内核。这样容器的隔离性会更好,但是启动速度会慢一些,其资源占用也会增加。
如果你手边没有Windows Server 2016的环境,我们也可以在Windows 10 操作系统上,使用Docker for Windows来开始实验。
下面引用Docker 中文指南中的几个提示:
提示1:Docker 已经在windows7.1和windows 8上通过测试,当然它也可以在低版本的windows上使用。但是你的处理器必须支持硬件虚拟化。
提示2:Docker 引擎使用的是Linux内核特性,所以我们需要在 Windows 上使用一个轻量级的虚拟机 (VM) 来运行 Docker。我们使用 Windows的Docker客户端来控制 Docker 虚拟化引擎的构建、运行和管理 。
提示3:为了简化这个过程,我们设计了一个叫 Boot2Docker 的应用程序,你可以通过它来安装虚拟机和运行 Docker。
提示4:虽然你使用的是 Windows 的 Docker 客户端,但是 docker 引擎容器依然是运行在 Linux 宿主主机上(现在是通过Virtual box)。直到我们开发了 windows 版本的 Docker 引擎,你只需要在你的 Windows 主机上启动一个 Linux 容器。
Windows安装docker环境的基本要求:
(1)必须是64位操作系统,win7或者更高 (推荐Windows 10/server 2016 因为新版集成了很多新组件)
(2)支持“ Hardware Virtualization Technology”,并且,“virtualization ”可用(也就是在BIOS启用VT参数)
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 ,可根据需要是否安装GUI。
3、更新系统到最新版本
打开powershell 输入命令“sconfig",选择6下载并安装更新。
===============================================================================
服务器配置
===============================================================================
1) 域/工作组: 工作组: WORKGROUP
2) 计算机名: WIN-GHUNK220OOQ
3) 添加本地管理员
4) 配置远程管理 已启用
5) Windows 更新设置: 仅下载
6) 下载并安装更新
7) 远程桌面: 已启用(所有客户端)
8) 网络设置
9) 日期和时间
10) 遥测设置基本
11) Windows 激活
12) 注销用户
13) 重新启动服务器
14) 关闭服务器
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 ...
安装完成重启计算机
在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官方应用程序镜像
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
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。