我是否需要使用SSH隧道来使用完整的CI / CDpipe道从Windows Server 2016部署Docker容器

非常感谢您对以上问题的帮助

将Windows容器(使用Docker创build)部署到Azure容器服务中

使用Linux操作系统的Windows容器与Docker容器和Azure容器服务/ Kubernetes集群

我正在继续我的研究,并且在某种程度上处于停滞状态,因为我试图按照以下文章的说明来解释如何创buildCI / CDpipe道来部署多容器应用程序。

https://docs.microsoft.com/en-us/azure/container-service/dcos-swarm/container-service-docker-swarm-setup-ci-cd

这里引用的代码示例是为Linux应用程序构build的,我无法运行它或创buildDocker容器。

因此,我有以下问题(这些问题可能会遍布全球,我对此表示歉意)

  1. 当我在Windows 2016服务器上创build.Net Core Web API时,是否有可能创build可部署到Linux环境的应用程序? (可移植的.NET Core Web API应用程序)

  2. 当我想利用使用Visual Studio Team Services的CI / CDpipe道,我真的需要使用Docker Swarm创buildAzure Container Service吗? 据我所知,ACS是一个基于Linux的环境,而我将在Windows Server 2016上创build基于Windows的Docker容器

  3. 如果我可以轻松地将这些容器部署到具有Windows节点的Kubernetes集群,在处理基于Windows Server 2016的Docker容器时是否真的需要关心ACS和SSH隧道

  4. 有没有一种替代方法可以将Windows Server 2016上使用完全CI / CDpipe道创build的Docker容器部署到Visual Studio Team Services,而无需使用基于Linux的SSH隧道/ ACS

非常感谢您的慷慨投入

米哈伊尔

1.在Windows 2016服务器上创build.Net Core Web API时,是否可以创build可以部署到Linux环境的应用程序?

是的.Net核心是由微软和.NET社区在GitHub上维护的通用开发平台。 它是跨平台的,支持Windows,macOS和Linux,可用于设备,云端和embedded式/物联网场景。 所以我们可以在Linux环境下部署.net core web api应用程序。

也许我们可以参考这个链接 。

2.当我想利用Visual Studio Team Services的CI / CDpipe道,我真的需要用Docker Swarm创buildAzure Container Service吗?

不,使用kubernetes和Visual Studio团队服务在Azure容器服务上创buildCI / CDpipe道是可用的。 有关VSTS和ACS K8的更多信息,请参阅此链接 。

3.如果我可以轻松地将这些容器部署到具有Windows节点的Kubernetes集群,那么在处理基于Windows Server 2016的Docker容器时,是否真的需要关心ACS和SSH隧道?

如果你想使用VSTS部署你的.NET核心容器,我想我们应该连接到ACS集群。

如果你想使用ACS k8s,我们应该添加kubernetes连接:

在这里输入图像说明

4.是否有另一种方法可以在不使用基于Linux的SSH隧道/ ACS的情况下,将使用Full CI / CDpipe道在Windows Server 2016上创build的Docker容器部署到Visual Studio Team Services

你的意思是你想使用ACS,但不想连接基于Linux的SSH隧道? 如果我是对的,我们可以在您的本地networking和Azure Vnet之间部署一个站点到站点的VPN,这样,我们可以像本地连接k8s。