File tree Expand file tree Collapse file tree
main/java/org/testcontainers
test/java/org/testcontainers/mysql Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -22,6 +22,9 @@ public class MySQLContainer<SELF extends MySQLContainer<SELF>> extends JdbcDatab
2222
2323 private static final DockerImageName DEFAULT_IMAGE_NAME = DockerImageName .parse ("mysql" );
2424
25+ private static final DockerImageName ORACLE_IMAGE_NAME =
26+ DockerImageName .parse ("container-registry.oracle.com/mysql/community-server" );
27+
2528 @ Deprecated
2629 public static final String DEFAULT_TAG = "5.7.34" ;
2730
@@ -58,7 +61,7 @@ public MySQLContainer(String dockerImageName) {
5861
5962 public MySQLContainer (final DockerImageName dockerImageName ) {
6063 super (dockerImageName );
61- dockerImageName .assertCompatibleWith (DEFAULT_IMAGE_NAME );
64+ dockerImageName .assertCompatibleWith (DEFAULT_IMAGE_NAME , ORACLE_IMAGE_NAME );
6265
6366 addExposedPort (MYSQL_PORT );
6467 }
Original file line number Diff line number Diff line change @@ -20,6 +20,8 @@ public class MySQLContainer extends JdbcDatabaseContainer<MySQLContainer> {
2020 public static final String NAME = "mysql" ;
2121
2222 private static final DockerImageName DEFAULT_IMAGE_NAME = DockerImageName .parse ("mysql" );
23+ private static final DockerImageName ORACLE_IMAGE_NAME =
24+ DockerImageName .parse ("container-registry.oracle.com/mysql/community-server" );
2325
2426 static final String DEFAULT_USER = "test" ;
2527
@@ -43,7 +45,7 @@ public MySQLContainer(String dockerImageName) {
4345
4446 public MySQLContainer (final DockerImageName dockerImageName ) {
4547 super (dockerImageName );
46- dockerImageName .assertCompatibleWith (DEFAULT_IMAGE_NAME );
48+ dockerImageName .assertCompatibleWith (DEFAULT_IMAGE_NAME , ORACLE_IMAGE_NAME );
4749
4850 addExposedPort (MYSQL_PORT );
4951 }
Original file line number Diff line number Diff line change 77import org .testcontainers .containers .ContainerLaunchException ;
88import org .testcontainers .containers .output .Slf4jLogConsumer ;
99import org .testcontainers .db .AbstractContainerDatabaseTest ;
10+ import org .testcontainers .utility .DockerImageName ;
1011
1112import java .io .File ;
1213import java .net .URL ;
2829import static org .assertj .core .api .Assertions .assertThat ;
2930import static org .assertj .core .api .Assertions .assertThatThrownBy ;
3031import static org .assertj .core .api .Assumptions .assumeThat ;
32+ import static org .assertj .core .api .Assertions .assertThatNoException ;
33+
3134
3235class MySQLContainerTest extends AbstractContainerDatabaseTest {
3336
@@ -270,6 +273,15 @@ void testCustom() throws SQLException {
270273 }
271274 }
272275
276+ @ Test
277+ void shouldAcceptOracleImageName () {
278+ DockerImageName oracleImage = DockerImageName
279+ .parse ("container-registry.oracle.com/mysql/community-server:8.0" );
280+
281+ assertThatNoException ()
282+ .isThrownBy (() -> new MySQLContainer (oracleImage ));
283+ }
284+
273285 private void assertHasCorrectExposedAndLivenessCheckPorts (MySQLContainer mysql ) {
274286 assertThat (mysql .getExposedPorts ()).containsExactly (MySQLContainer .MYSQL_PORT );
275287 assertThat (mysql .getLivenessCheckPortNumbers ()).containsExactly (mysql .getMappedPort (MySQLContainer .MYSQL_PORT ));
You can’t perform that action at this time.
0 commit comments