ubi*_*bie 8 amazon-ec2 docker windows-container docker-desktop
我有一台运行 Windows 10 的桌面计算机,运行 Windows 10、Microsoft 365、在 Windows 容器模式下运行的 Docker Desktop。
我有一台运行 Windows Server 2019 的 Amazon EC2 计算机,并且也在那里安装了 Microsoft 365 并通过 RDP 进行访问。
本质上,我想要创建一台 EC2 机器,它允许我运行在 Windows 容器模式下运行的 Microsoft 365 和 Docker 桌面。
我尝试创建 AWS EC2 实例并安装 Docker for Desktop,但遇到很多神秘错误。(见下文)。
我尝试使用 Microsoft 的 AMI 和https://aws.amazon.com/marketplace/server/procurement?productId=d94e0325-6111-4c69-8c29-87e784a6d0aa中内置的 Hyper-V
[或者我应该使用 Docker Enterprise 来实现此目的?]
[或者根本不可能获得一台可以在 AWS 上运行 Docker Windows 容器的 Windows 机器吗?]
[或者我是否需要选择特定类型的机器大小 [t4.large 或其他] - 我之前在 Microsoft Azure 上体验过,运行 Docker Desktop 只能在特定规格的机器上运行,这允许“虚拟化之上的虚拟化” ”]
System.InvalidOperationException:
job failed with message: 'DockerDesktopVM' failed to start. (Virtual machine ID 677B7F36-8A44-42CE-AD29-7884DDCE164C)
The Virtual Machine Management Service failed to start the virtual machine 'DockerDesktopVM' because one of the Hyper-V components is not running (Virtual machine ID 677B7F36-8A44-42CE-AD29-7884DDCE164C).
at Docker.Backend.HyperVInfrastructure.HandleUpdatedJob(CIMConcreteJob updatedJob) in C:\workspaces\PR-15633\src\github.com\docker\pinata\win\src\Docker.Backend\HyperV\HyperVInfrastructure.cs:line 762
at Docker.Backend.HyperVInfrastructure.<HandleMaybeAsyncJob>d__38.MoveNext() in C:\workspaces\PR-15633\src\github.com\docker\pinata\win\src\Docker.Backend\HyperV\HyperVInfrastructure.cs:line 696
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at Docker.Backend.HyperVInfrastructure.<StartVMAsync>d__30.MoveNext() in C:\workspaces\PR-15633\src\github.com\docker\pinata\win\src\Docker.Backend\HyperV\HyperVInfrastructure.cs:line 544
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Docker.Backend.HyperV.<StartAsync>d__6.MoveNext() in C:\workspaces\PR-15633\src\github.com\docker\pinata\win\src\Docker.Backend\HyperV\HyperV.cs:line 99
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Docker.Backend.HttpAPI.HyperVController.<StartAsync>d__7.MoveNext() in C:\workspaces\PR-15633\src\github.com\docker\pinata\win\src\Docker.Backend\HttpAPI\HyperVController.cs:line 42
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Threading.Tasks.TaskHelpersExtensions.<CastToObject>d__1`1.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Web.Http.Controllers.ApiControllerActionInvoker.<InvokeActionAsyncCore>d__1.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Web.Http.Controllers.ActionFilterResult.<ExecuteAsync>d__5.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Web.Http.Dispatcher.HttpControllerDispatcher.<SendAsync>d__15.MoveNext()
Run Code Online (Sandbox Code Playgroud)
更新 2022 您现在可以在 Windows Server 2019/2022 操作系统上安装 WSL(适用于 Linux 的 Windows 子系统)
https://learn.microsoft.com/en-us/windows/wsl/install-on-server
Windows Server 2019 操作系统主机不支持 Docker Desktop,Docker Desktop 仅在 Windows 10 主机、Mac 上支持,并计划在 Linux 桌面上支持(Windows 服务器主机和 Windows 10 桌面之间存在内核差异)
使用 Windows Server 2019,您可以安装 Docker Engine Enterprise(现在称为 Mirantis Container Runtime (MCR))并运行 Windows 容器。
Microsoft 的以下文档提供了有关在 Windows Server 上安装 Docker 引擎的信息: https://learn.microsoft.com/en-us/virtualization/windowscontainers/quick-start/set-up-environment ?tabs=Windows-Server
如果您想通过脚本安装,请查看此链接(Docker Engine Enterprise 现在称为 Mirantis Container Runtime): https ://docs.mirantis.com/containers/v3.1/mcr-deployment-guide/mcr-windows.html
您还可以在此处查看此博客,并按照以下步骤在 Windows Server 主机上安装 Docker 引擎: https://mechdeveloper.medium.com/windows-server-2016-containers-bc0baa2222c1
| 归档时间: |
|
| 查看次数: |
5621 次 |
| 最近记录: |