Windows

Windows Server 2019 Core(4)-安装Do

2019-02-19  本文已影响0人  Rakutens

请先以管理员身份打开PowerShell窗口

一台新的服务器,或是没有装过Docker,需要先安装一些Windows功能
(可以通过添加角色与功能界面安装,也可以通过PowerShell安装)

安装Hyper-V
>Install-WindowsFeature -Name Hyper-V

安装容器功能
>Install-WindowsFeature -Name Containers

安装完成后需重启服务器
>Restart-Computer -Force

然后安装Docker,可以选择正式版,也可以选择预览版

正式版

>Install-Module DockerMSFTProvider
提示:不受信任的存储库
(选"Y"确认)

>Install-Package Docker -ProviderName DockerMSFTProvider -Force
(可能会提示包验证错误,安装失败,多试几次即可)

提示:程序来自未标记为"受信任"的程序包源
(选"Y"确认)

安装成功,显示

Name                           Version          Source           Summary
----                           -------          ------           -------
Docker                         18.09.2          DockerDefault    Contains Docker EE for use with Windows Server.

如看到以下提示,请重启一次服务器

警告: A restart is required to enable the containers feature. Please restart your machine.

预览版

>Install-Module DockerProvider

提示:需要使用 NuGet 提供程序来继续操作
(选"Y"确认)
提示:不受信任的存储库
(选"Y"确认)

>Install-Package Docker -ProviderName DockerProvider -RequiredVersion preview
提示:程序来自未标记为"受信任"的程序包源
(选"Y"确认)

安装成功,显示:

Name                           Version          Source           Summary
----                           -------          ------           -------
Docker                         17.06.2-ee-19    Docker           Docker for Windows Server 2016

设置虚拟机自动激活(AVMA)

可运行的Windows容器数量受宿主服务器授权的影响,标准版上限2个,数据中心版无限制。
宿主机需安装和配置 Microsoft 的 HYPER-V 服务器角色
(在虚拟机中输入以下命令即可,Key为静态值可直接使用)

标准版
>slmgr /ipk TNK62-RXVTB-4P47B-2D623-4GF74

数据中心版
>slmgr /ipk H3RNG-8C32Q-Q8FRX-6TDXV-WMBMW

(AVMA微软官方文档)

运行测试

portainer为可通过浏览器使用的docker配置程序

> docker run -d --name portainer --restart always -p 9000:9000 -v \\.\pipe\docker_engine:\\.\pipe\docker_engine portainer/portainer

在浏览器中打开 http://服务器ip:9090,如果能看到页面,则说明所有步骤都成功了

备注

1.切换内核
安装完后,默认为Windows内核容器,可手工切换至Linux内核容器,但个人认为意义并不大,完全可以在服务器上通过Hyper-V管理器安装一个Linux虚拟机,在虚拟机内跑Linux下的Docker,实现同时拥有两种内核的Docker服务,然后再通过Docker自带的Swarm进行统一管理,但混合部署情况下需配置Docker对象标签,具体配置可查看微软官方文档(Linux+Windows 混合操作系统群集)。

切换到Linux内核容器
>[Environment]::SetEnvironmentVariable("LCOW_SUPPORTED", "1", "Machine")
>Restart-Service Docker

切换到Windows内核容器
>[Environment]::SetEnvironmentVariable("LCOW_SUPPORTED", $null, "Machine")
>Restart-Service Docker

2.其它命令

升级Docker
>Update-Module Docker

删除Docker
>Uninstall-Package -Name Docker -ProviderName DockerMSFTProvider

打开防火墙
>New-NetFirewallRule -DisplayName 'Docker SSL Inbound' -Profile @('Domain', 'Public', 'Private') -Direction Inbound -Action Allow -Protocol TCP -LocalPort 2376

3.其它参考
Docker对象标签
创建ActiveDirectory

4.官方镜像地址



上一篇下一篇

猜你喜欢

热点阅读