gpt4 book ai didi

java - Docker Binding 使用 testcontainers 解析异常

转载 作者:行者123 更新时间:2023-12-03 11:10:05 25 4
gpt4 key购买 nike

我想运行一些集成测试,其中包括使用 org.testcontainers Docker Compose 模块设置一个完整的环境。我是 Windows 和 Docker 测试的新手,测试容器也是如此。
使用版本:

  • Docker 桌面社区:2.5.0.0
  • org.testcontainers:testcontainers:1.15.0
  • org.springframework.boot 2.3.4。

  • 我的代码如下所示:
    @ClassRule
    public static DockerComposeContainer environment = new DockerComposeContainer(
    new File("C:\\dev\\myproject\\myapp\\docker-compose\\docker-compose.env.yml"),
    new File("C:\\dev\\myproject\\myapp\\docker-compose\\docker-compose.yml"))
    .withExposedService("myservice_1", 9999)
    .withLocalCompose(true);
    我的撰写文件看起来像这样。
    services:
    myservice:
    image: myapp/myservice:latest
    hostname: myservice
    volumes:
    - ../volumeDir:/app/volumeDir
    - ../config:/app/config
    expose:
    - 9999
    ports:
    - 9999:9999
    command: -Dspring.liquibase.enabled=true
    networks:
    - internet
    它看起来像一些绑定(bind)错误,堆栈跟踪中最重要的部分:
    >     java.lang.RuntimeException: java.lang.RuntimeException: org.testcontainers.shaded.com.fasterxml.jackson.databind.exc.ValueInstantiationException:
    > Cannot construct instance of `com.github.dockerjava.api.model.Binds`,
    > problem: Error parsing Bind
    > 'C:\dev\myproject\myapp\volumeDir:/app/volumeDir:rw'
    > at [Source: (org.testcontainers.shaded.okio.RealBufferedSource$1); line: 1,
    > column: 1369] (through reference chain:
    > com.github.dockerjava.api.command.InspectContainerResponse["HostConfig"]->com.github.dockerjava.api.model.HostConfig["Binds"])
    > at org.rnorth.ducttape.timeouts.Timeouts.callFuture(Timeouts.java:68)
    > at org.rnorth.ducttape.timeouts.Timeouts.doWithTimeout(Timeouts.java:60)
    > at org.testcontainers.containers.wait.strategy.WaitAllStrategy.waitUntilReady(WaitAllStrategy.java:53)
    > ...
    我试图将路径更改为绝对路径,没有任何区别。您有什么想法可以使此绑定(bind)无法解析吗?

    最佳答案

    此错误是由于 Testcontainers 和最新的 Docker for Windows 版本的当前问题造成的。他们是 already aware of itfix seems close to being merged .
    更新 : 版本 1.15.1现在可以修复此错误。

    关于java - Docker Binding 使用 testcontainers 解析异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64995858/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com