我试过了:
Windows Server 2012 R2上的工具箱。禁用Hyper-V以允许virtualbox。我不能在物理BIOS上启用虚拟化。
Windows Server 2016上安装的Docker EE w / Containers EC2。安装正确。守护进程正在运行。但是,我不能在hello-world旁边拉一个图像:nanoserver。所以我追捕windowsservercore和nanoserver,仍然无法正常工作,因为它们已经过时了。当你试图拉它时,来自Docker.com上的毛躁人的回购不起作用。
再次使用全新的Windows Server 2016实例启动。我禁用了Hyper-V并安装了ToolBox。不起作用。
如何在AWS中的Windows服务器环境中运行Docker?
所有vids / tuts看起来都很简单,但我确定无法让它工作。我输了。
答案 0 :(得分:4)
为了在Windows Server上使用Docker,您实际上并不需要 来安装Docker for Windows(以前称为Docker Toolbox)。
首先,了解Windows Server 2016平台上有两种不同类型的容器非常重要:Windows容器和Hyper-V容器。
还有第三个选项在Hyper-V上运行,在Windows上称为Linux容器(LCOW),但我们不会深入研究,因为看起来你特别询问Windows容器。
您可以查看以下几个选项:
如果您绝对需要在AWS上运行Windows Hyper-V容器,或者想要使用Docker for Windows运行Linux容器,则可以配置i3.metal
EC2实例类型,这是一个裸机实例。您可以将Windows Server 2016部署到i3.metal
实例类型,安装Hyper-V,然后安装Docker for Windows。这将使您能够运行两个Linux容器(在Hyper-V Linux客户机下),Hyper-V容器和Windows容器。
亚马逊提供可以从中部署EC2实例的亚马逊机器映像(AMI),其中包含Amazon Elastic Container Service(ECS)的优化。 ECS是一种基于云的集群服务,使您能够在EC2中运行的工作节点阵列中部署基于容器的应用程序。
通常,您将使用ECS和ECS优化的AMI来构建生产规模的集群,以将您的应用程序部署到。
还有一个“ Windows Server 2016 with Containers ”AMI,它与ECS优化的AMI不同,但确实支持在Windows Server 2016上运行Docker容器。您需要做的是使用此AMI部署新的EC2实例,然后您可以登录它并开始发出Docker命令来启动Windows容器。 如果您不熟悉Windows容器,此选项很可能是最简单的选项。
答案 1 :(得分:0)
EC2实例不允许嵌套虚拟化(EC2实例本身就是虚拟机)。 Docker for Windows使用Hyper-V,而Docker Toolbox使用Virtualbox,因此这些解决方案都不可行。
即使您能够在Windows EC2实例上运行它们,由于Docker for Windows通过Samba将文件挂载到Docker VM这一事实并不是很快,因此性能不会那么好。
如果要运行Linux容器,则应该在Linux上运行它们。设置速度非常快,并且您在Docker for Windows中使用的所有Docker命令仍然有用。
答案 2 :(得分:0)
可以在Windows上运行docker。运行以下命令进行设置。
docker-machine create --driver amazonec2 aws01
这个命令的作用是创建一个新的EC2 linux实例,并将docker连接到该linux实例。当在windows实例上运行docker命令时,docker命令实际上被发送到linux实例,执行,结果返回到windows EC2实例。
这是Docker关于它的文档。我希望这有帮助。 https://docs.docker.com/machine/drivers/aws/#aws-credential-file
答案 3 :(得分:0)
我知道这与您的问题有点矛盾;但您也可以考虑在其中一个新的 ec2 Mac OS 实例(裸机)上运行它。为我工作。