在windows 10 或windows 11 上使用docker,可以直接在docker 官网下载docker desktop安装即可。
但在windows server上则无法支持docker desktop,此时可通过如下方式安装:
以 管理员权限运行Power Shell,然后执行:
安装Hyper-V
>Install-WindowsFeature -Name Hyper-V
安装容器功能:
安装容器功能
>Install-WindowsFeature -Name containers
通过命令或开始菜单重启服务器:
安装完成后需重启服务器
>Restart-computer
开始安装docker:
Install-Module DockerMSFTProvider
如果出现NUGET相关提示,输入YES确认安装
如果出现Untrusted repository,输入YES确认安装
安装docker package:
Install-Package Docker -ProviderName DockerMSFTProvider -Force
(视网络状况,可能需要多尝试几次)
如下图显示 docker 版本即表示安装完成了。
安装完成的docker EE 默认内核为windows,通常情况下需要切换到linux内核,可通过如下代码进行切换:
>[Environment]::SetEnvironmentVariable("LCOW_SUPPORTED", "1", "Machine")
>Restart-Service Docker
【选做,根据实际情况】如果要使用windows 容器,比如运行老式asp.net 4.7 程序,则需要widnows 内核的容器支持,可通过如下指令切换回windows内核:
>[Environment]::SetEnvironmentVariable("LCOW_SUPPORTED", $null, "Machine")
>Restart-Service Docker
Windows server 的 docker 没有可视化UI,可安装第三方的工具,比如 portainer:
docker run -d --name portainer --restart always -p 9000:9000 -v \\.\pipe\docker_engine:\\.\pipe\docker_engine portainer/portainer
安装完成后,输入:http://localhost:9000
按照提示初始化系统即可:
如需要安装docker compose:
Invoke-WebRequest "https://github.com/docker/compose/releases/download/v2.6.1/docker-compose-Windows-x86_64.exe" -UseBasicParsing -OutFile $Env:ProgramFiles\Docker\docker-compose.exe
查看docker-compose version:
docker-compose --version