从 Java 代码启动 Docker 容器时,我需要禁用 IPv6。使用命令行,如下:
docker run --sysctl net.ipv6.conf.all.disable_ipv6=1 ...
是否可以做同样的事情,但将 Java 与 Spotify 的docker-client一起使用?
作为替代解决方案......可以使用docker-java吗?
从 Java 代码启动 Docker 容器时,我需要禁用 IPv6。使用命令行,如下:
docker run --sysctl net.ipv6.conf.all.disable_ipv6=1 ...
是否可以做同样的事情,但将 Java 与 Spotify 的docker-client一起使用?
作为替代解决方案......可以使用docker-java吗?
请按照这个-
final NetworkConfig networkConfig =
NetworkConfig.builder().name(networkName).driver("bridge").checkDuplicate(true).ipam(ipam)
.internal(false).enableIPv6(false).labels(labels)
.build();
我认为您应该能够使用我们的 docker-java-api 做到这一点(有关详细信息,请参阅 Wiki 和链接的博客文章):https ://www.github.com/amihaiemil/docker-java-api
原则上,它应该很简单:
final Docker docker = new LocalDocker(...); //or new RemoteDocker(...);
final Container container = docker.containers().create(/*javax.json.JsonObject config*/);
当然,您必须研究 Docker API 文档才能了解 JsonObject 应该具有什么格式(它也应该接受有关 IpV 6 的配置)。