gradle でスプリング ブート プラグインの bootBuildImage タスクを呼び出すと、packeto を使用して Docker イメージが作成されます。springBoot プラグインで指定されたメイン クラスを開始します。以下に、build.gradle ファイルの抜粋を示します。
springBoot {
mainClass = 'MyMainApp'
}
bootBuildImage {
imageName = "$docker_repo/${project.name}"
}
を呼び出すとdocker run
、docker は を開始するコンテナを実行しMyMainApp
ます。
ただし、同じ docker イメージを使用して、別のメイン クラスを実行したいと考えています。私は次のことを試しました:
-Dloader.main=MyOtherApp
の cmd として指定するdocker run
- 環境変数に指定
-Dloader.main=MyOtherApp
するJAVA_TOOL_OPTIONS
LOADER_MAIN=MyOtherApp
環境変数として指定
これらのオプションはどれも開始しませんMyOtherApp
。