Docker Compose
Docker Compose ビルドステップでは、 Docker Compose(英語) ビルドサービスを起動し、ビルド終了時にシャットダウンすることができます。 このランナーを使用することで、複数コンテナーの Docker アプリを実行できます。
プライベートリポジトリから基本イメージをプルするか、新しく構築されたイメージをレジストリにプッシュする必要がある場合は、次のように Docker または Podman レジストリに対して認証を行うことができます。
プロジェクト設定で、サイドバーから 接続 を選択し、 Docker への接続の構成 手順に従って、プロジェクトに新しい Docker レジストリ接続(または複数の接続)を追加します。
ビルド構成設定で、前の手順で作成した接続を追加して、 Docker レジストリ接続 ビルド機能を構成します。
共通設定
使用可能なステップ実行ポリシーについては、 こちらで説明しています。
Docker Compose のインストールオプション
TeamCity エージェントに Docker Compose をインストールするには、2 つのオプションがあります:
下位互換性を高めるため、TeamCity はまずスタンドアロンの Compose バイナリがインストールされているかどうかを確認します。 「はい」の場合、ランナーは古い Compose V1 構文を使用してコマンドを実行します (たとえば、 docker-compose アップ)。 それ以外の場合、ランナーはインストールされているプラグインを検索し、最新の Compose V2 構文 (たとえば、 docker compose アップ) に切り替えます。
Docker Compose 設定
Docker Compose ランナーは、ビルド中に使用されるサービスの説明を含む 1 つまたは複数の Docker Compose YAML ファイル(英語)をサポートします。 docker-compose.yml ファイル(複数可)へのパスは、 ビルドチェックアウトディレクトリからの相対パスにする必要があります。 複数のファイルを指定する場合は、スペースで区切ります。
ビルドエージェントは、ビルド中に次の docker-compose コマンドを実行します。
実行ごとに強制プルする オプションが有効になっている場合、 docker-compose アップ コマンドの前に docker-compose プル が実行されます。
HEALTHCHECK をサポートするイメージで Docker Compose を使用する場合、TeamCity はこのパラメーターをサポートするすべてのコンテナーの 正常 ステータスを待機します。
Docker Compose の起動に成功した場合、TeamCity エージェントは Docker Compose デフォルトネットワークのお名前を含む TEAMCITY_DOCKER_NETWORK 環境変数を登録します。 このネットワークは、一部のビルドランナーで使用される場合、 コンテナーラッパー に透過的に渡されます。