0

为了演示目的,我正在尝试在 cloude 铸造厂内增加一个大厅 ci。为了避免额外的工作和成本,我想避免使用存储服务。但是需要以某种方式填充 Web 服务和工作服务之间的 ssh 连接的 TSA 密钥。我的问题是,是否可以通过 docker-compose 文件中的环境传递 TSA 密钥?

我希望在 docker-compose 文件中有这样的内容:

web:
image: concourse/concourse
command: web
links: [db]
depends_on: [db]
ports: ["9090:8080"]
environment:
  CONCOURSE_EXTERNAL_URL: http://10.2.1.20:9090/
  CONCOURSE_POSTGRES_HOST: db
  CONCOURSE_POSTGRES_USER: concourse_user
  CONCOURSE_POSTGRES_PASSWORD: concourse_pass
  CONCOURSE_POSTGRES_DATABASE: concourse
  CONCOURSE_ADD_LOCAL_USER: test:test
  CONCOURSE_MAIN_TEAM_LOCAL_USER: test
  #TSA keys:
  CONCOURSE_SESSION_KEY: AA67/2C$AVG.....
  CONCOURSE_HOST_KEY: AA67/2C$AVG.....
  CONCOURSE_WORKER_KEY: AA67/2C$AVG.....
logging:
  driver: "json-file"
  options:
    max-file: "5"
    max-size: "10m"
4

1 回答 1

1

是的,根据https://concourse-ci.org/concourse-web.html#web-running,您可以设置:

CONCOURSE_SESSION_SIGNING_KEY=path/to/session_signing_key
CONCOURSE_TSA_HOST_KEY=path/to/tsa_host_key
CONCOURSE_TSA_AUTHORIZED_KEYS=path/to/authorized_worker_keys

您也可以为运行中的工作人员设置类似的环境变量。

于 2020-04-09T19:37:35.757 回答