在Docker容器中运行VSTS构建作业

时间:2018-01-19 10:38:30

标签: docker continuous-integration azure-pipelines

我们正在使用YAML作为构建定义,我正在寻找一种在Docker容器中运行构建的每个阶段的方法。我不想在我的场所创建VM并安装代理,我只想创建一个Docker镜像,并在VSTS上的任何Linux VM上从该映像运行我的构建。

以下是Gitlab方法的一个例子:

image: monachus/hugo:v0.30.2
stages:
  - deploy
  - cert
before_script:
  - git submodule init
  - git submodule update --force
...

正如您所看到的那样,有一个图片:您可以​​指定您的构建将在何处运行。

我已在文档中搜索过此内容,但无法找到它。有谁知道VSTS中是否存在此功能?

1 个答案:

答案 0 :(得分:1)

我找到了使用预览功能的解决方案,您可以指定要在变量中使用的图像。这是一个例子:

phases:
- phase: Java Build
  variables:
    _PREVIEW_VSTS_DOCKER_IMAGE: "maven:3.5-jdk-8"
  queue: Hosted Linux Preview
  steps:
  - bash: mvn clean verify
    displayName: Tests 

如果我使用泊坞窗图像设置变量 _PREVIEW_VSTS_DOCKER_IMAGE ,那么该阶段将在该Docker容器内运行。

这里有一些文档:https://github.com/Microsoft/vsts-agent/blob/master/docs/preview/runtaskindocker.md