ブログでプロキシ環境下の設定を書くといっていたので、忘れないうちに公開します。
ベースは公式のdocker-composeです。
導入時のバージョン 2.7.3
を前提にしています。
webの公開ポートを 8084
に変更しています。
あと、Volumeは大体docker-compose.ymlファイルと並列に置くのが好きなので、そのようにしています。
本題のプロキシ設定は、Workerだけに設定しておけばOKです。
docker-compse.yml
oncourse-db:
image: postgres:9.6
restart: always
environment:
POSTGRES_DB: concourse
POSTGRES_USER: concourse
POSTGRES_PASSWORD: changeme
PGDATA: /database
volumes:
- /home/concourse/db/database:/database
concourse-web:
image: concourse/concourse:2.7.3
restart: always
links: [concourse-db]
command: web
ports: ["8084:8080"]
volumes: ["./keys/web:/concourse-keys"]
environment:
CONCOURSE_BASIC_AUTH_USERNAME: concourse
CONCOURSE_BASIC_AUTH_PASSWORD: changeme
CONCOURSE_EXTERNAL_URL: "http://concoursehost:8084"
CONCOURSE_POSTGRES_DATA_SOURCE: |-
postgres://concourse:changeme@concourse-db:5432/concourse?sslmode=disable
concourse-worker:
image: concourse/concourse:2.7.3
restart: always
privileged: true
links: [concourse-web]
command: worker
volumes: ["./keys/worker:/concourse-keys"]
environment:
CONCOURSE_TSA_HOST: concourse-web
http_proxy: http://username:password@host_or_ipaddress:port
https_proxy: http://username:password@host_or_ipaddress:port
no_proxy: internalhost
おまけ:パイプライン内のタスクでプロキシサーバを指定するときは?
パイプライン作成時にプロパティファイルを渡すようにすることで、パイプラインのファイルとプライベートな設定値を分離できます。
リポジトリにサンプルファイルみたいなものだけおいておけば、簡単に展開できます。