azuredevops具有自定义映像的自托管容器代理



我们有结合了.net 4.0和C++(CLI C++(的源代码。为了构建此代码,我们同时使用visualstudio2015和visualstudio2010。为了构建C++源代码,我们使用VS2010。现在,当我们迁移到azure devops时,我们需要创建构建管道。实现这一点的一种方法是创建一个自托管的windows代理,并在其上安装2015和2010版本

有没有办法把这个集装箱化?我们可以在已经安装了vs2015和vs2010的情况下创建一个自定义容器映像吗?

您可以在虚拟机内部使用docker进行容器化,您可以在Azure Pipelines中设置自托管代理,以便在Windows Server Core(适用于Windows主机(或Ubuntu容器(适用于Linux主机(中使用docker运行。当您希望运行具有外部编排的代理(如Azure容器实例(时,这很有用。支持Windows和Linux作为容器主机。Windows容器应该在Windows vmImage上运行。要在Docker中运行您的代理,您将向Docker run传递一些环境变量,Docker run将代理配置为连接到Azure Pipelines或Azure DevOps Server。最后,您可以自定义容器以满足您的需要。任务和脚本可能取决于容器的PATH上可用的特定工具,您有责任确保这些工具可用。

这是参考文件https://learn.microsoft.com/en-us/azure/devops/pipelines/agents/docker?view=azure-devops

据我所知,我们在虚拟机中运行的容器数量完全取决于我们选择的虚拟机大小(硬件配置(。我们在azure中确实有不同的VM大小。

如果你想运行更多的容器,我建议你使用AKS,Azure Kubernetes服务(AKS(通过将操作开销卸载到Azure,简化了在Azure中部署托管Kubernete集群。作为一个托管的Kubernetes服务,Azure处理关键任务,如健康监测和维护。由于Kubernetes主机由Azure管理,因此您只能管理和维护代理节点。因此,AKS是免费的;您只为集群中的代理节点付费,而不是为主节点付费。

最新更新