如何在大厅管道中配置自定义资源类型?

时间:2017-09-26 03:52:41

标签: concourse

我已经进行了谷歌搜索,以找到在大厅管道中设置自定义资源的方法,但答案/文档不起作用。

有人可以提供从本地注册表中提取并在构建计划中使用的自定义资源类型的工作示例吗?

例如,假设我要克隆git资源并稍微修改它并将其推送到我的本地注册表。 git资源图像将是name:localhost:5000 / local_git:latest

您如何在管道定义中使用此自定义资源(local_git:latest)?

2 个答案:

答案 0 :(得分:1)

运行本地注册表时,需要考虑两个主要设置:

  1. 必须使用insecure_registries:

    insecure_registries: ["my.local.registry:8080"]

  2. 如果您在" localhost"中运行注册表,则不应使用localhost作为注册表的地址,如果您这样做,则docker镜像将尝试解析为docker映像的localhost而不是本地计算机,为了避免此问题,请使用本地计算机的IP地址。 (DON' T使用127.0.0.1)

答案 1 :(得分:0)

您可以在管道yml中的resource_types键下的管道中定义自定义资源类型。

例如:

resource_types:
  - name: custom-git
    type: docker-image
    source:
      repository: localhost:5000/local_git

一个重要的注意事项是,自定义资源类型图像的获取方式与使用管道中的基本资源相同,因此对于私有Docker注册表的情况,您只需配置必要的source:docker-image资源上(请参阅docker-image-resource的文档)

然后,您可以像使用任何基本类型一样使用资源类型:

resources:
  - name: some-custom-git-resource
    type: custom-git
    source: ...

请注意,资源的type:键与资源类型上的name:匹配。

请查看Configuring Resource Types的Concourse文档,了解有关如何在管道中使用自定义类型的更多信息。