Storeの管理
パッケージ
他のサービスと同様に、このAPIは80番ポートをexposeされたDockerイメージを提供しています。
$ docker run -d -p 7000:80 screwdrivercd/store:stable
$ open http://localhost:7000
このDockerイメージはそのバージョン(例: 1.2.3
) や動的なlatest
・stable
でタグ付けされています。特に理由がなければstable
または固定のバージョンタグを利用してください。
設定
Screwdriverはほとんどの設定がデフォルトとして設定されていますが、これらはconfig/local.yaml
や環境変数を利用して上書きすることができます。利用可能な環境変数はこちらで定義されています。
認証
APIから渡されるJWTのバリデーションについて設定します。
キー | デフォルト | 説明 |
---|---|---|
SECRET_JWT_PUBLIC_KEY | なし | JWTの署名を検証するために使用される公開鍵。APIと同じものを設定します。 |
JWT_MAX_AGE | 13h | JWTの有効期間。 |
# config/local.yaml
auth:
jwtPublicKey: |
PUBLIC KEY HERE
jwtMaxAge: 13h
配信
サービスがどのようにトラフィックを受け付けるかを設定します。
キー | デフォルト | 説明 |
---|---|---|
PORT | 80 | listenするポート |
HOST | 0.0.0.0 | listenするホスト(そのマシン上からの接続だけを受け付けるときだけlocalhostに設定) |
URI | http://localhost:80 | 外部から接続可能なURI (通常はロードバランサーやCNAME) |
HTTPD_TLS | false | SSLサポートの有無です。有効にする場合はfalse をtls.createServer に渡すJSONオブジェクトに置き換えてください。 |
# config/local.yaml
httpd:
port: 443
host: 0.0.0.0
uri: https://localhost
tls:
key: |
PRIVATE KEY HERE
cert: |
YOUR CERT HERE
ビルドアーティファクト
ビルドアーティファクトの保存についての設定です。
キー | デフォルト | 説明 |
---|---|---|
BUILDS_EXPIRE_TIME | 1814400000 (3週間) | ビルドログが保存される期間 |
BUILDS_MAX_BYTES | 1073741824 (1GB) | ビルドアーティファクトへのアップロード上限サイズ |
# config/local.yaml
builds:
expiresInSec: 1814400000 # 3 weeks
maxByteSize: 1073741824 # 1GB
ストレージ
現在、アーティファクトの保存には次の2つの方法があります。memory
- インメモリストア(非効率・非永続)、 s3
- Amazon S3
キー | デフォルト | 説明 |
---|---|---|
STRATEGY | memory | アーティファクトを保存する方法(memoryまたはs3) |
S3_ACCESS_KEY_ID | なし | Amazonアクセスキー |
S3_ACCESS_KEY_SECRET | なし | Amazonシークレットアクセスキー |
S3_REGION | なし | Amazon S3 のリージョン |
S3_BUCKET | なし | 書き込みアクセスを行うAmazon S3 のバケット |
S3_ENDPOINT | なし | Amazon S3と互換性のある独自のエンドポイント |
S3_DEFAULT_ACL | public-read | S3 のバケットにオブジェクトを保存する時のデフォルトのACL |
# config/local.yaml
strategy:
plugin: memory
s3:
accessKeyId: YOUR-KEY-ID
secretAccessKey: YOUR-KEY-SECRET
region: YOUR-REGION
bucket: YOUR-BUCKET-ID
endpoint: YOUR-S3-API-URL