代码之家  ›  专栏  ›  技术社区  ›  r1ckr

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

  •  1
  • r1ckr  · 技术社区  · 7 年前

    我们正在使用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
    ...
    

    正如您所看到的,有一个image:section,您可以在其中指定构建将运行的位置。

    我在文档中搜索过这个,但找不到。有人知道VST中是否存在此功能吗?

    1 回复  |  直到 7 年前
        1
  •  1
  •   r1ckr    7 年前

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

    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 
    

    如果我设置变量 _预览\u VSTS\u DOCKER\u图像 使用docker映像,则该阶段将在docker容器中运行。

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