阿里云 Windows Server 2019 安装Docker
建议查看 https://www.cnblogs.com/valu/p/11731406.html
官方文档:https://docs.microsoft.com/zh-cn/virtualization/windowscontainers/quick-start/set-up-environment?tabs=Windows-Server
安装完成之后无法正常使用
PS C:\Users\Administrator> docker pull nginx Using default tag: latest error during connect: In the default daemon configuration on Windows, the docker client must be run with elevated privileges to connect.: Post http://%2F%2F.%2Fpipe%2Fdocker_engine/v1.24/images/create?fromImage=nginx&tag=latest: open //./pipe/docker_engine: The system cannot find the file specified. PS C:\Users\Administrator>
应该是阿里云ECS本身就是虚拟出的,所以无法再正常使用Hyper-v
可以正常使用的请给给出解决方案
官方文档:https://docs.microsoft.com/zh-cn/virtualization/windowscontainers/quick-start/set-up-environment?tabs=Windows-Server
打开PowerShell
以管理员身份打开PowerShell
执行命令
安装DockerMsftProvider
Install-Module -Name DockerMsftProvider -Repository PSGallery -Force
Y之后过程有些慢,结果如下:
PS C:\Users\Administrator> Install-Module -Name DockerMsftProvider -Repository PSGallery -Force 需要使用 NuGet 提供程序来继续操作 PowerShellGet 需要使用 NuGet 提供程序“2.8.5.201”或更高版本来与基于 NuGet 的存储库交互。必须在“C:\Program Files\PackageManagement\ProviderAssemblies”或“C:\Users\Administrator\AppData\Local\PackageManagement\ProviderAssembli es”中提供 NuGet 提供程序。也可以通过运行 'Install-PackageProvider -Name NuGet -MinimumVersion 2.8.5.201 -Force' 安装 NuGet 提供程序。是否要让 PowerShellGet 立即安装并导入 NuGet 提供程序? [Y] 是(Y) [N] 否(N) [S] 暂停(S) [?] 帮助 (默认值为“Y”): Y PS C:\Users\Administrator>
安装Docker
Install-Package -Name docker -ProviderName DockerMsftProvider
结果如下:
PS C:\Users\Administrator> Install-Package -Name docker -ProviderName DockerMsftProvider 程序包来自未标记为“受信任”的程序包源。 是否确实要安装来自“DockerDefault”的软件? [Y] 是(Y) [A] 全是(A) [N] 否(N) [L] 全否(L) [S] 暂停(S) [?] 帮助 (默认值为“N”): Y Name Version Source Summary ---- ------- ------ ------- Docker 20.10.6 DockerDefault Contains Docker EE for use with Windows Server. PS C:\Users\Administrator>
重启
Restart-Computer -Force
安装完成
PS C:\Users\Administrator> docker -v
Docker version 20.10.6, build b3766ff