2
在Concourse CI中,默认情况下,作业任务的底层容器将被实例化并与用户root
一起运行。如何与特定用户一起运行Concourse CI工作任务?
如果用于我的任务的容器需要使用不同的用户(例如postgres)执行,我怎么能在Concourse中做到这一点?
在Concourse CI中,默认情况下,作业任务的底层容器将被实例化并与用户root
一起运行。如何与特定用户一起运行Concourse CI工作任务?
如果用于我的任务的容器需要使用不同的用户(例如postgres)执行,我怎么能在Concourse中做到这一点?
Concourse任务提供了一个user
参数来显式设置用户运行其容器为。 见http://concourse.ci/running-tasks.html#task-run-user。
这里是一个样本大堂管道来演示使用该参数的:
---
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"
不要忘记,以纪念你的答案是正确的。 –