阿里云 Windows Server 2019 安装Docker

安装完成之后无法正常使用

PS C:UsersAdministrator> 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:UsersAdministrator>

应该是阿里云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:UsersAdministrator> Install-Module -Name DockerMsftProvider -Repository PSGallery -Force

需要使用 NuGet 提供程序来继续操作
PowerShellGet 需要使用 NuGet 提供程序“2.8.5.201”或更高版本来与基于 NuGet 的存储库交互。必须在“C:Program
FilesPackageManagementProviderAssemblies”或“C:UsersAdministratorAppDataLocalPackageManagementProviderAssembli
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:UsersAdministrator>

安装Docker

Install-Package -Name docker -ProviderName DockerMsftProvider

结果如下:

PS C:UsersAdministrator> 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:UsersAdministrator>

重启

Restart-Computer -Force

安装完成

PS C:UsersAdministrator> docker -v
Docker version 20.10.6, build b3766ff
原文地址:https://www.cnblogs.com/Jerrycjc/p/15141287.html