如何玩docker-javadocker运行–rm?

在我们的J2EE项目中,我们想通过docker -java库调用sjourdan / ffmpeg docker 。

一个典型的ffmpeg转换要求是这样的:

docker run --rm -v /e/data:/tmp/workdir sjourdan/ffmpeg -i /tmp/workdir/test.mov -f mp4 -vcodec libx264 -acodec aac /tmp/workdir/test.mp4 

我们用DockerClient.createContainerCmd()和右边的.with()方法来pipe理所有这些,除了--rm参数。

有没有办法通过docker-java添加它?

根据这个其他的StackOverflow问题/答案 ,– --rm不是由Docker API处理的,所以我们也没有用docker-java运气。

所以,最后我们在执行之后小心地移除容器,如下所示:

 dockerClient.startContainerCmd(container.getId()).exec(); // do some stuff dockerClient.removeContainerCmd(container.getId()).withForce(true).exec();