java 中调用docker_如何通过Java程序执行docker命令
我不需要調(diào)用Docker遠(yuǎn)程API,而是需要開發(fā)一個與Docker Linux Client(而不是Docker守護(hù)進(jìn)程)對話的程序.這是我的代碼
try {
String[] command = {"docker", "run", "-it", "tomcat:9", "bash"};
ProcessBuilder pb = new ProcessBuilder(command);
pb.inheritIO();
Process proc = pb.start();
InputStream is = proc.getInputStream();
OutputStream os = proc.getOutputStream();
BufferedReader reader
= new BufferedReader(new InputStreamReader(is));
BufferedWriter writer
= new BufferedWriter(new OutputStreamWriter(os));
writer.write("pwd");
writer.flush();
String line = "";
while ((line = reader.readLine()) != null) {
System.out.print(line + "
");
}
proc.waitFor();
} catch (Exception e) {
e.printStackTrace();
}
我總是得到錯誤.
如果我使用“-it”,它會說“無法在非tty輸入上啟用tty模式”,如果我使用“-i”,我將獲得Stream Closed Exception.
有什么方法可以解決這個問題嗎?
總結(jié)
以上是生活随笔為你收集整理的java 中调用docker_如何通过Java程序执行docker命令的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 恒生java开发复试_2019恒生电子面
- 下一篇: java dalvik_深入理解Andr