如何强制测试容器使用特定的 docker 镜像?

问题描述

我通常在 spring-boot-test 设置上运行我的 Testcontainers junit sql 测试,如下所示:

spring.datasource.url=jdbc:tc:mariadb:10.5.8:///test
spring.datasource.username=test
spring.datasource.password=test

问题:当我省略 docker 镜像值时,例如 spring.datasource.url=jdbc:tc:mariadb:///test,如何强制始终使用固定的 docker 镜像版本?

我的目标是提供每个项目都应包含的 test-commons.jar。所以项目都应该使用在 commons jar 中定义的相同的默认 mariadb 图像,而不是自己设置显式图像。

这可能吗?

解决方法

您可以复制MariaDBContainerProvider,使用“mymariadb”或“custommariadb”作为数据库类型,并在newInstance()中设置所需的版本。

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...