TeamCity On-Premises 2026.2 Help

Docker への接続の構成

事前構成された Docker 接続により、次のことが可能になります。

  • ビルドを実行する前に認証された Docker または Podman レジストリにサインインし、ビルド後にサインアウトします。

  • ビルド後に公開されたイメージをクリーンアップします (現在、Podman では使用できません)。

プロジェクト設定 | 接続 ページで、 Docker レジストリ接続を構成できます。 TeamCity は docker.io (デフォルト) またはプライベート Docker レジストリへの接続をサポートしています。 プロジェクトには複数の接続を追加できます。 接続は、現在のプロジェクトのすべてのサブプロジェクトとビルド構成で使用できます。

レジストリアドレスのフォーマット

デフォルトでは、 https://docker.io (英語) が使用されます。 ビルドを実行するビルドエージェントが Docker ではなく Podman を使用する場合、レジストリドメインを registries.conf ファイルに追加する必要があります。 詳細については、次の記事を参照してください: Linux コンテナーレジストリを管理する方法(英語)

レジストリに接続するには、 [http(s)://]hostname:port の形式を使用します。

プロトコルが指定されていない場合は、デフォルトで https を介した接続が使用されます。

プライベートクラウドレジストリへの接続

TeamCity は、Docker および従来の LXC イメージを保存する Azure Container Registry をサポートしています。 サービス主体 (プリンシパル ID とパスワードが接続資格情報として使用されます) または 管理者アカウントを使用して認証できます。

Amazon Elastic Container Registry (AWS ECR) がサポートされています。接続を構成するときに、AWS リージョンと AWS セキュリティ資格情報を指定します。

安全でないレジストリへの接続

安全でないレジストリに接続するには

  1. Docker デーモン設定ファイル(英語)を作成または編集して、 insecure-registries 配列値を含めます。 例:

    { "insecure-registries" : ["http://my-registry:5000"] }

    これだけで、HTTP 経由でプライベートレジストリに接続できるようになります。

  2. 自己署名証明書を使用して HTTPS 経由で安全でないレジストリに接続するには、上記の手順に加えて、 こちらで説明されているように、自己署名証明書を TeamCity サーバーの JVM にインポートします。 自己署名証明書を使用する(英語)の Docker ドキュメントを参照できます。

単一のマシンで Docker を使用して複数のエージェントを実行する

TeamCity は、複数のエージェントが同じマシンで並列ビルドを実行し、それらのビルド中に Docker レジストリに接続するケースをサポートしています。 このセットアップでは、異なる Docker 環境を使用する必要があります。あるビルドの最後に実行される docker logout コマンドが、別のエージェントでの並列ビルドに影響しないようにする必要があります。

設定するには、各エージェントの .docker ディレクトリの場所を指定する必要があります。 そのためには、 ビルド設定パラメーターとして、または各エージェントの ビルドエージェント.プロパティ ファイルで env.DOCKER_CONFIG=%teamcity.agent.home.dir%/system/.docker 環境変数を定義してください。

2026 年 9 月 11 日