0

春にデータアクセスレイヤーを使用する統合テストを実行しようとしていますが、そのためにはデータベースに接続してテスト用のアプリケーション Bean を実行する必要があります。私のテストの一部には、データベースの永続化されたデータの使用が含まれているため、docker を使用してデータベース テストを実行するために testContainers を選択したのはそのためです。ここでの問題は、テストに必要な入力済みのエントリを含む独自の SQL イメージが既にあり、テスト用に空のデータベースを最初から作成したくないため、テストに独自のイメージを使用したいことです。しかし、Docker イメージからスプリング ブート用にデータソースを構成する方法がわかりません。汎用コンテナーでは、getJDBCUrl() 関数や構成に役立つものがないためです。Mysql イメージを直接使用している場合、データソースを簡単に構成できることはわかっています。

@ClassRule
val databaseContainer: KGenericContainer = KGenericContainer("myOwnSqlImage:latest")
        .withEnv("MYSQL_DATABASE", "databaseNamer")
        .withEnv("MYSQL_USER", "root")
        .withEnv("MYSQL_ROOT_PASSWORD", "root-password")
4

1 に答える 1