Docker Imageの選択
方法1 teamcity-agentイメージを使う
JetBrains公式で用意しているイメージとしてteamcity-agentとteamcity-minimal-agentがある。
teamcity-minimal-agentはビルドを行える最低限のイメージで、Java(Corretto?)が入っているDebian。
.NETやJavaのプロジェクトでは前者(teamcity-agent)が推奨されている。teamcity-agentにはVCSクライアントも入っておりソースコードをエージェント側でチェックアウトできてビルドが少し早い。
またdocker-in-dockerもできるので方法2のコンテナイメージを選択するビルドも2階建てで実行できる。
TeamCityを同じマシンでDockerで動かしていればdocker-composeを使うか、networkを使って解決ればいいし、サーバ自体は素で起動している場合はlocalhostが解決出来るように –add-host=lcalhost:[ip a で出てくくるeth0ホストのinetの右隣に記載されているIPアドレス] などを付けるのが吉。
方法2 独自のイメージを使う
Mavenのビルドステップ設定の一番下で、ビルドに使うコンテナイメージを選択。Additional docker run arguments、で必要に応じてタイムゾーンとか解決したいホスト名とかを追加しておく。
リポジトリからイメージをpullする場合は事前にdocker loginしておく。