如何与特定用户一起运行Concourse CI作业任务?

时间:2016-12-02 19:52:47

标签: concourse

在Concourse CI中,默认情况下,作业任务的基础容器将被实例化并与用户root一起运行。

如果用于我的任务的容器需要与其他用户(例如postgres)一起执行,我该如何在Concourse中执行此操作?

1 个答案:

答案 0 :(得分:6)

Concourse任务提供user参数以显式设置用户将其容器作为运行。 请参阅http://concourse-ci.org/running-tasks.html#task-run-user

以下是一个示例Concourse管道,用于演示该参数的使用:

---
jobs:
- name: check-container-user
  plan:
  - do:
    - task: container-user-postgres
      config:
        platform: linux
        image_resource:
          type: docker-image
          source:
            repository: postgres
            tag: "latest"
        run:
          user: postgres
          path: sh
          args:
          - -exc
          - |
            whoami
            echo "Container running with postgres user"