我希望使用docker客户端创建和运行docker。我想做这样的事:
docker run -d --link selenium-hub:hub selenium/node-chrome:2.53.0 如何在docker客户机上实现此命令?到目前为止,我的代码如下:
CreateContainerResponse response = dockerClient
.createContainerCmd("selenium-hub:hub")
.withName(name)
.withImage("selenium/"+browser+":"+version)
.withAttachStderr(false)
.withAttachStdin(false)
.withAttachStdout(false)
.exec();实际上IDK如何指定-链接。请帮帮我。对不起,我是新来的码头工人。
发布于 2017-04-03 21:38:14
您使用的是哪些版本的docker-java?我尝试了当前版本(3.0.8),并且有一个用于容器创建的withLinks方法。您可以在github页面上找到一个示例。请记住,在使用该映像创建容器之前,必须先提取这些映像(docker pull <imageName>)。
测试示例:
CreateContainerResponse container1 = dockerClient
.createContainerCmd("busybox")
.withCmd("sleep", "9999")
.withName("container1")
.exec();
dockerClient.startContainerCmd(container1.getId()).exec();
...
CreateContainerResponse container2 = dockerClient
.createContainerCmd("busybox")
.withCmd("sleep", "9999")
.withName("container2")
.withLinks(new Link("container1", "container1Link"))
.exec();
dockerClient.startContainerCmd(container2.getId()).exec();与docker run命令匹配的代码应该如下所示:
CreateContainerResponse container2 = dockerClient
.createContainerCmd("selenium/node-chrome:2.53.0")
.withLinks(new Link("selenium-hub", "hub"))
.exec();
dockerClient.startContainerCmd(container2.getId()).exec();https://stackoverflow.com/questions/43179393
复制相似问题