我试着用docker启动一个码头容器。使用DockerClient.startContainerCmd方法对我有用,但是我需要用参数启动容器。从该方法返回的StartContainerCmd类在我执行它之前没有提供参数的任何方法。
有办法吗?
发布于 2018-06-25 12:14:20
StartContainerCmd将委托给StartContainerCmdExec,后者抽象启动集装箱休息操作。操作只有一个路径参数(容器的id)。如果需要提供附加参数,则需要使用这些参数创建容器:
CreateContainerResponse container = dockerClient.createContainerCmd(IMAGE_NAME)
.withCmd("cmd", "arg1", "arg2").exec()获取容器的id,然后启动它:
dockerClient.startContainerCmd(container.getId()).exec();
发布于 2018-11-27 08:28:57
它应该可以轻松地与https://www.github.com/amihaiemil/docker-java-api一起工作:
final Docker docker = new LocalDocker(...);//or RemoteDocker(...)
final Container container = docker.containers().create(/*JsonObject*/).start();JsonObject传递给Containers.create(.)应该是Docker的API所期望的输入(参见API文档)。在该JsonObject中,您还应该能够指定启动脚本。
https://stackoverflow.com/questions/51021055
复制相似问题