引言:对于在winserver 2019上安装docker,官方有说明,网上也有教程,但是大部分都是和官方的方法一样,在这安装过程中往往会因为这样或那样的问题导致过程受阻,停滞不前,最近折腾winserver的docker(linux已经折腾完毕),坑还是比较多的,通过个人的一些经验,进行此次总结,主要目的是提供一种简单易用的安装方法,当然,你要是通过官方那样敲几条命令就能安装,那固然很好,我主要是为了能够实现离线安装,此文同样适用于winserver 2016机器。不多说,直接上干货。

1官方提供的方法(需要联网

(1)步骤一:

Install-Module -Name DockerMsftProvider -Repository PSGallery -Force  #这一步骤是安装DockerMsftProvider模块,如没有NuGet程序,则会提示你安装,NuGet是包管理程序,这个必须要你安装,无法跳过

(2)步骤二:

Install-Package -Name docker -ProviderName DockerMsftProvider #利用上述安装的模块来安装docker包,这一步会下载一个docker的zip包

总结一下:按照官网这种方式来安装,首先你要安装NuGet程序,然后安装DokcerMsftProvider,最后利用DokcerMsftProvider来安装docker,这一步还是会下载docker的zip包,最最主要的就是这最后一步,前面下载程序没什么好说的,这最后一步到底干了什么?其实主要做了如下5件事情:

(1)下载docker的zip包(里面是一堆的exe程序,包含了服务端dockerd和客户端docker等一系列的docker程序)

(2)解压docker zip包到 C:\Program Files\Docker 目录,创建 C:\ProgramData\Docker\config 目录

(3)添加环境path

C:\Program Files\Docker  #将这个路径添加到系统环境变量,其实就是为了能够在 PowerShell中全局执行docker命令

(4)利用winserver的服务器管理器安装Containers(容器)功能,此功能不安装,无法启动docker服务端

(5)启动docker服务端,并将其注册为服务,这一步需要确保 C:\ProgramData\Docker\config 下具有 daemon.json 文件


OK !到这里我们清楚了,它在这个安装过程中具体干了些什么事情,那么我们还有必要安装NuGet和DokcerMsftProvider这个2玩意儿?没必要,我们完全可以自己下载docker的zip包,手动实现这些过程!当然,你要是一些列命令敲下来啪啪啪就全部安装好了,那么你也没必要看这个文章了,作者照着敲了一堆命令,不是这个程序包下不到,就是那个程序包下不到,也是头疼的很。下面进入正题,离线安装方式!


2、手动离线安装

环境要求:winserver 2019 标准版 或 winserver 2016 标准版一台

资源要求:docker离线包,本文基于docker-19-03-5.zip进行安装

docker zip包下载地址: https://dockermsft.blob.core.windows.net/dockercontainer/docker-19-03-5.zip

步骤一:

解压 docker-19-03.zip到 C:\Program Files\Docker 下,其中Docker目录需要手动创建

步骤二:

创建 C:\ProgramData\Docker\config 目录,在config目录下创建 daemon.json 文件,其内容可为
{
"insecure-registries":["192.168.1.135:5000"]
}
作者在此处加了一个本地的镜像仓库,请根据实际情况修改,为空也可以。

步骤三:

添加系统环境path环境变量:我的电脑 > 属性 > 高级系统设置 > 环境变量 > 新建

Winserver 2019 轻松安装 docker 19-03-5_第1张图片

步骤四:将dockerd注册为服务

以管理员身份进入CMD执行如下指令:

cd C:\Program Files\Docker # 进入dockerd.exe所在目录路径
dockerd --register-service # 将dockerd 注册为服务

步骤五:安装Containers功能,安装需要重启

Winserver 2019 轻松安装 docker 19-03-5_第2张图片

步骤六:开始玩docker

Winserver 2019 轻松安装 docker 19-03-5_第3张图片

Winserver 2019 轻松安装 docker 19-03-5_第4张图片

PS:docker服务端启动后,会创建一块虚拟网卡,创建的容器将以这块网卡为网关,所以不要删除它,如下:

Winserver 2019 轻松安装 docker 19-03-5_第5张图片

结语回顾一下手动安装过程,其实很简单,就是解压包,创建目录,添加环境变量,启用winserver的Containers功能,完成这些步骤就成功了,不过windows上玩docker我也是刚开始,以前只在linux上,相比会有比较多的坑,各位谨慎入坑!其实只要有docker的zip包,我们离线安装也可,不必再下什么NuGet这些程序了。好了,本文到此结束,希望对各位有所帮助,谢谢!