docker java.lang.IllegalStateException:无法连接到服务器

fnatzsnv  于 2022-12-22  发布在  Docker
关注(0)|答案(5)|浏览(273)

我正在使用测试容器库来启动一个容器。它工作了一段时间,但目前运行到这个

java.lang.IllegalStateException: Could not connect to Ryuk at localhost:49167

    at org.testcontainers.utility.ResourceReaper.start(ResourceReaper.java:201)
    at org.testcontainers.DockerClientFactory.client(DockerClientFactory.java:205)
    at org.testcontainers.LazyDockerClient.getDockerClient(LazyDockerClient.java:14)
    at org.testcontainers.LazyDockerClient.authConfig(LazyDockerClient.java:12)
    at org.testcontainers.containers.GenericContainer.start(GenericContainer.java:310)

我查看了资源收割者代码,它似乎在这里失败了

public synchronized void performCleanup() {
    this.registeredContainers.forEach(this::stopContainer);
    this.registeredNetworks.forEach(this::removeNetwork); //FAILS HERE
    this.registeredImages.forEach(this::removeImage);
}
s3fp2yjn

s3fp2yjn1#

我可以确认,通过将testcontainers更新到1.16.0版本可以解决此问题
面临与testcontainers 1.15.3相同的异常
Windows 10,Docker桌面4.0.0

im9ewurl

im9ewurl2#

我遇到了同样的问题,同样的Docker-for-Mac版本。
我的解决方案是在首选项中禁用“使用gRPC FUSE进行文件共享”:

vawmfj5a

vawmfj5a3#

我试过这里提到的所有方法,但都不起作用。如果有人仍然面临这个问题,他们可以给予一试...这对我很有效
这适用于windows
1.在管理员模式下打开你的power shell.
1.运行“网络停止winnat”
1.运行“网络启动winnat”
这样做解决了我的设置问题。希望这对某人有帮助

b1uwtaje

b1uwtaje4#

对我来说,重新启动本地Docker引擎解决了这个问题

zaq34kh6

zaq34kh65#

我在Windows 11计算机上遇到了同样的问题:
原来大量的端口是由服务“IP helper”(与ipv6支持有关)分配的,即由testcontainer或其他服务预先分配的端口。IP helper分配了数周,但从未或很少释放。通过永久禁用IP helper服务,所有问题都得到了解决,设置工作良好,从那时起没有任何我需要的副作用。

相关问题