首页 > 解决方案 > 无法获取 Docker 映像:RemoteDockerImage

问题描述

testcontainers用于创建容器的集成测试。但它失败并出现以下错误:

Step failed
org.testcontainers.containers.ContainerLaunchException: Container startup failed
.....
Caused by: org.testcontainers.containers.ContainerFetchException: Can't get Docker image: RemoteDockerImage(imageName=<my-docker-image>:latest, imagePullPolicy=DefaultPullPolicy())
    at org.testcontainers.containers.GenericContainer.getDockerImageName(GenericContainer.java:1282)
    at org.testcontainers.containers.GenericContainer.logger(GenericContainer.java:616)
    at org.testcontainers.containers.GenericContainer.doStart(GenericContainer.java:321)
    at org.testcontainers.containers.GenericContainer.start(GenericContainer.java:312)
....

通过查看错误,它似乎无法找到 docker 映像。但是,我确实有本地图像,我通过逐个字符比较来检查。

我对其进行了调试,在这一行,我检查了图像是否具有所有正确的值,但由于某种原因,它抛出异常而不是返回正确的值。

知道如何解决这个问题吗?

版本:测试容器:1.15.0-rc2 Docker 版本:3.1.0,引擎:20.10.2

添加调试日志(查看this.image.getImage()名称如何获取名称但其他两个失败):

在此处输入图像描述

标签: javadockercucumbertestcontainers

解决方案


.testcontainer.properties在我的$HOME目录中为我解决了这个问题。该文件用于覆盖属性,但我仍然不确定如何解决问题。我在我的身上看到.gitlab.yml了我们所做的,只是在我当地的模仿中,解决了这个问题。


推荐阅读