我必须容器化 Dot Net Core Web API 应用程序并将该容器部署到 Azure 容器服务中
这是我所做的事情
我确实在 Azure 门户中创建了 Azure 容器服务帐户/域/虚拟机
此外,我确实使用已安装 Docker 的容器为 Windows Server 2016 创建了另一个虚拟机
在 Windows Server 2016 上,我创建了一个简单的 .NET Core Web API 应用程序,并使用 Docker 为该应用程序创建了一个镜像
我确实将 Web API 应用程序的镜像推送到 Docker 中心,并使用 SSH 隧道接口(interface)尝试将镜像下载到 Azure 容器服务中,以便可以从该服务运行它
里>
但是,我会收到一条消息,指出 Windows 容器无法在 Linux 上运行,因为默认情况下 Azure 容器服务是 Linux 系统
有没有办法将 Windows Docker 容器部署到 Azure 容器服务中 A。我应该在 Windows 中创建 Azure 容器服务吗? b.我是否应该使用另一个编排器(不是 Docker)将 Windows 容器部署到 Azure 容器服务中? C。我应该走不同的路吗?
提前非常感谢您的支持!
最佳答案
- 您需要使用 Windows 节点创建 ACS(kubernetes 可以做到这一点)。
- Docker 不是一个协调器。 Docker是一个运行容器的引擎。不,另一个引擎在这里没有帮助,您需要支持 Windows 容器的主机。
- 如果你真的想要 docker,别无他法。将 ACS 与 Windows 节点结合使用,或使用独立\集群 2016 Datacenter 节点(您必须自行管理它们)。
我使用过一些 kubernetes,我相信它比您自己管理 ws w016 盒子要优越(Azure 提供了一种在几分钟内创建工作 kubernetes 集群的方法)。 Kubernetes 可以做一些有趣的事情,例如滚动升级,它与 Azure 集成,因此当您创建端点时,它会自动为您创建公共(public) IP 地址等等。
缺点是复杂。如果您想让 kubernetes 成为您的生产环境,您最好做好修复它的准备:)
关于azure - 使用 Linux 操作系统将 Windows 容器(使用 Docker 构建)推送到 Azure 容器服务 (AWS),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45596826/