values.yaml のサンプル
11 months ago1 min read
Server v4.1
サーバー管理者
このページの内容
以下のスニペットに、Helm で CircleCI Server をエアギャップ環境にインストールする場合の values.yaml
ファイルのサンプルを示します。
リソース
ここで使用するチャートでは、環境に以下のリソースがあることを前提としています。
-
Helm チャートのインストールに使用する K3s クラスタ
-
K3s クラスタで受信用に設定した MetalLB
-
docker.internal.example.com のポート 5000 で実行されるプライベート Docker レジストリ (TLS 暗号化なし)
-
mTLS を無効化した Nomad インスタンス
-
minio.internal.example.com で実行される MinIO インスタンス (API でポート 9000 をリッスン。TLS なし)
-
server.internal.example.com
と*.server.internal.example.com
の両ドメイン用に発行された TLS 証明書
各値の詳細については、標準のインストールガイド (「 ステップ 2 - コアサービス」以降) を参照してください。
Values.yaml
# Private docker registry at docker.internal.example.com:5000
global:
domainName: "server.internal.example.com"
license: '<<your-server-license-here>>'
container:
registry: "docker.internal.example.com:5000"
org: "<image-registry-org>"
# GitHub Enterprise
github:
hostname: "github.internal.example.com"
unsafeDisableWebhookSSLVerification: true # If using self-signed certificates
enterprise: true
selfSignedCert: true # If using self-signed certificates
# These must be generated and added manually from GitHub Enterprise
clientId: "<<github-enterprise-oauth-app-client-id>>"
clientSecret: "<<github-enterprise-oauth-app-client-secret>>"
defaultToken: "<<github-enterprise-personal-application-token>>"
# TLS with your provider
tls:
certificate: "<<your-generated-tls-certificate>>"
privateKey: "<<your-generated-tls-private-key>>"
# Object storage with Minio
object_storage:
bucketName: "circleci-data" # Update to the name of the bucket created in MinIO
expireAfter: 0
s3:
enabled: true
endpoint: "http://minio.internal.example.com:9000"
accessKey: "<<minio-username>>"
secretKey: "<<minio-password>>"
# Distributor using CircleCI Agent in Minio
distributor:
agent_base_url: http://minio.internal.example.com:9000/circleci-data
launch_agent_base_url: http://minio.internal.example.com:9000/circleci-data
# Nomad
nomad:
buildAgentImage: "docker.internal.example.com:5000/circleci/picard" # Do not provide image version, only image name and registry
server:
gossip:
encryption:
key: "<<nomad-gossip-encryption-key>>"
rpc:
mTLS:
enabled: false # mTLS is disabled - it is recommended that this be enabled
# VM Service Disabled - Requires cloud connectivity
vm_service:
enabled: false
# Additional nginx annotations
nginx:
annotations:
# This example uses MetalLB as a k3s load balancer
metallb.universe.tf/allow-shared-ip: default
# The below values require no special modifications for an air-gapped environment
apiToken: "<<circleci-api-token>>"
sessionCookieKey: "<<circleci-session-cookie-key>>"
keyset:
signing: '<<circleci-signing-key>>'
encryption: '<<circleci-encryption-key>>'
mongodb:
auth:
rootPassword: "<<mongodb-root-password>>"
password: "<<mongodb-password>>"
pusher:
secret: "<<pusher-secret>>"
postgresql:
auth:
postgresPassword: "<<postgres-password>>"
rabbitmq:
auth:
password: "<<rabbitmq-password>>"
erlangCookie: "<<rabbitmq-erlang-cookie>>"