阿里云windows server 2022 安装 docker
文章目录
情景
情景:最近一直在搞微服务,团队的服务器是阿里云的 windows server 2022,之前部署的是单体应用,单体后端+单体前端的 ci/cd 倒也不痛不痒。但上了微服务之后,一下子就变得麻烦起来,哪怕手动部署也嫌得麻烦。决定还是在服务器上装一下docker。
尝试
不确定windows server能不能直接装,最初就先按自己电脑装 docker desktop 的路子试了试,能装上,但是 docker engine 运行存在问题,docker desktop 打开时一直在初始化,估计是windows server 不支持 hype-v 的关系,尝试安装 wsl2 也装不上,看来这路子走不通。
正解
换个方法,windows server 本身支持 docker ee,那就直接安装 docker enterprise 吧。在这之前,切记把安装过的 docker desktop 卸载干净,不卸载的话至少也要把 c:\user\sysetem32 下面的 docker.exe 和 dockerd.exe 删掉,不然会影响 docker ee 的运行与配置:
安装docker管理工具
在 powershell 中执行以下命令:
install-module -name dockermsftprovider -repository psgallery -force
问问题时,可以直接回车,默认是yes
安装docker
在 powershell 中执行以下命令:
install-package -name docker -providername dockermsftprovider
问问题时,输入y,因为默认是no
重启系统
restart-computer -force # 手动重启也行
配置docker系统路径
设置环境变量:path -> 添加:
c:\program files\docker
配置docker引擎(也许不用)
c:\programdata\docker\config\daemon.json
,没有就手动创建
{
"authorization-plugins": [],
"dns": [],
"dns-opts": [],
"dns-search": [],
"exec-opts": [],
"storage-driver": "",
"storage-opts": [],
"labels": [],
"log-driver": "",
"mtu": 0,
"pidfile": "",
"data-root": "",
"cluster-store": "",
"cluster-advertise": "",
"debug": true,
"hosts": ["tcp://0.0.0.0:2375"],
"log-level": "",
"tlsverify": true,
"tlscacert": "",
"tlscert": "",
"tlskey": "",
"group": "",
"default-ulimits": {},
"bridge": "",
"fixed-cidr": "",
"raw-logs": false,
"registry-mirrors": [],
"insecure-registries": [],
"disable-legacy-registry": false
}
启动docker服务
在 powershell 中执行以下命令:
start-service docker
到这里,就可以正常使用docker了,来句 docker run hello-world
跑个helle world试试成效:
windows容器文档:https://learn.microsoft.com/zh-cn/virtualization/windowscontainers/(官方手册仅供参考)
发表评论