如何使用java实用地检查PC中docker桌面的可用性

问题描述 投票:1回答:2

我有一个自我编程的IDE,它具有使用以下命令运行docker-compose.yml文件的操作docker-compose up

该操作仅在开发人员安装了Docker桌面后才可用。如何使用Java检查Docker桌面的可用性?

if(dockerDesktopAvailable()){
   // my action is here
}
java docker docker-compose netbeans-platform
2个回答
0
投票
参考link,您可以如下实现dockerDesktopAvailable():

public static dockerDesktopAvailable() { try (Stream < String > stream = Files.lines(Paths.get("/proc/1/cgroup"))) { return stream.anyMatch(line -> line.contains("docker")); } catch (IOException e) { return false; } }


0
投票
使用此依赖项:

<dependency> <groupId>com.github.docker-java</groupId> <artifactId>docker-java</artifactId> <version>3.0.14</version> </dependency>

然后执行

List<Container> containers = dockerClient.listContainersCmd() .withShowSize(true) .withShowAll(true) .withStatusFilter("exited").exec();

© www.soinside.com 2019 - 2024. All rights reserved.