ユーザーインターフェースの管理

ユーザーインターフェースには、API、データストア、アバター、カスタムドキュメントの設定オプションがあります。

パッケージ

他のサービスと同様に、80番ポートがexposeされたDockerイメージとしてユーザーインターフェースを提供しています。

$ docker run -d -p 8000:80 screwdrivercd/ui:stable
$ open http://localhost:8000

このDockerイメージはそのバージョン(例: 1.2.3)や動的なlateststableでタグ付けされています。特に理由がなければstableまたは固定のバージョンタグを利用してください。

設定

ユーザーインターフェースは API や store 、アバターイメージのパスの場所などのいくつかの設定オプションがあります。

API 設定

API のホスト名は環境変数 ECOSYSTEM_API を通して設定されます。

例:

$ docker run -d -p 8000:80 -e ECOSYSTEM_API=http://localhost:9000 screwdrivercd/ui:stable

Store 設定

ログやファイルストアのホスト名は環境変数 ECOSYSTEM_STORE を通して設定されます。

例:

$ docker run -d -p 8000:80 -e ECOSYSTEM_STORE=http://localhost:9001 screwdrivercd/ui:stable

アバター設定

UI の Docker イメージにコンテンツセキュリティ保護ヘッダが追加されたので、アバターなどの外部ソースから読み込まれる画像はこれらのヘッダーで設定する必要があります。これは環境変数 AVATAR_HOSTNAME を通して設定されます。

例:

$ docker run -d -p 8000:80 -e AVATAR_HOSTNAME="avatars*.githubusercontent.com" screwdrivercd/ui:stable

アバターのホスト名の一般的な例は以下です。

スペースで区切ることで複数のホスト名を追加することができます。

例:

$ docker run -d -p 8000:80 -e AVATAR_HOSTNAME="avatars*.githubusercontent.com bitbucket.org/account/*/avatar/*" screwdrivercd/ui:stable

ユーザーアバターの表示/非表示

ビルドの詳細画面でユーザーアバターを表示するかしないかは環境変数SHOW_AVATARSで設定できます。デフォルトだと値はtrueになっていてユーザーアバターは表示されます。

環境変数名 デフォルト値 説明
SHOW_AVATARS “true” ユーザーアバターを表示するなら”true”に表示しないなら”false”に設定します

カスタムドキュメントリンク

環境変数 SDDOC_URL を通して、ドキュメントのリンクを設定することができます。

デフォルト: https://docs.screwdriver.cd

例:

$ docker run -d -p 8000:80 -e SDDOC_URL=https://mydocs.mysite.me screwdrivercd/ui:stable

カスタムSlackリンク

Slackのインスタンスリンクは環境変数 SLACK_URL でカスタマイズできます。

デフォルト: https://slack.screwdriver.cd/

例:

$ docker run -d -p 8000:80 -e SLACK_URL=https://slack.mydomain.com screwdrivercd/ui:stable

Canaryルーティング

ScrewdriverのKubernetesクラスタがnginx Canary ingressを利用している場合、この環境変数を設定することでUIサーバに一定期間だけCookieをセットさせ、後続のAPIリクエストが同じCanaryのUIポッドに割り振られるようにします。

環境変数名 デフォルト値 説明
CANARY_RELEASE ”” “true” に設定すると、このUIサーバがCanaryバージョンのUIを提供していることを示します
RELEASE_VERSION “stable” UIのヘッダーのヘルプメニューの下に表示されるリリースバージョン