java - docker-java 使用 -rm 标志运行容器
问题描述
我正在使用docker-java来生成新容器。我想在容器完成后移除它们。有没有办法用 docker-java 实现这一点?
所以我基本上想要类似的东西
docker run --rm my-docker
使用 docker-java。
解决方案
在Docker HTTP API中,docker run --rm
选项转换为对象AutoRemove
内的选项HostConfig
。Java API 反映了这种对象布局。docker-java
wiki没有使用该对象的任何好的示例,但它也在Java API 中。
import com.github.dockerjava.api.command.CreateContainerResponse;
import com.github.dockerjava.api.model.HostConfig;
HostConfig hostConfig = HostConfig
.newHostConfig()
.withAutoRemove(true); // Set the "remove" flag
CreateContainerResponse container = dockerClient
.createContainerCommand("busybox")
.withHostConfig(hostConfig) // Add in the HostConfig object
.exec();
推荐阅读
- office-js - 防止任务窗格在保存期间关闭(异步)
- wordpress - 如何重命名WordPress数据库中的用户列
- sql - Oracle 动态存储过程 - 将字符串与参数连接时,参数值变为倒置问号(“¿”)
- angular - angular 4 min and max vlue in same input type date not working
- r-markdown - kableExtra:在 ioslides_presentation 上设置表格宽度
- excel - 将二维矩阵的行(或列)和 Excel 公式中的一维数组相加
- python - 获取求和的嵌套字典值列表
- c# - 在c#中将DataTable导出到word
- asp.net-mvc - 将路由值传递给 Html.BeginForm
- java - Java 库路径 - Mac 上的 UnsatisfiedLinkError