【问题标题】:How to find CPU MEMORY usage with docker stats command?如何使用 docker stats 命令查找 CPU 内存使用情况?
【发布时间】:2019-11-05 21:31:34
【问题描述】:

我正在使用 docker-java API 在我的项目中执行 docker API。我没有找到任何合适的方法列出 docker CPU 内存使用情况

借助 docker-java API 获取 /v1.24/containers/redis1/stats HTTP/1.1

依赖关系

compile group: 'com.github.docker-java', name: 'docker-java', version: '3.1.2'

代码

public static void execute() {
        DockerClient dockerClient = DockerClientBuilder.getInstance().build();
        dockerClient.statsCmd("containerName");  
    }

我没有得到任何输出

告诉我如何使用 docker-java api 执行 docker stats

【问题讨论】:

    标签: docker-java


    【解决方案1】:

    这对我有用

    public Statistics getNextStatistics() throws ProfilingException {
        AsyncResultCallback<Statistics> callback = new AsyncResultCallback<>();
        client.statsCmd(containerId).exec(callback);
        Statistics stats;
        try {
            stats = callback.awaitResult();
            callback.close();
        } catch (RuntimeException | IOException e) {
            // you may want to throw an exception here
        }
        return stats; // this may be null or invalid if the container has terminated
    }
    

    【讨论】:

      【解决方案2】:

      DockerClient 是我们可以在 Docker 引擎/守护进程和我们的应用程序之间建立连接的地方。

      默认情况下,Docker 守护进程只能通过 unix:///var/run/docker.sock 文件访问。除非另有配置,否则我们可以在本地与侦听 Unix 套接字的 Docker 引擎进行通信。

      我们可以分两步打开连接:

          DefaultDockerClientConfig.Builder config 
        = DefaultDockerClientConfig.createDefaultConfigBuilder();
      DockerClient dockerClient = DockerClientBuilder
        .getInstance(config)
        .build();
      

      由于引擎可以依赖其他特性,客户端也可以根据不同的条件进行配置。

      例如,构建器接受服务器 URL,也就是说,如果引擎在端口 2375 上可用,我们可以更新连接值:

      DockerClient dockerClient
        = DockerClientBuilder.getInstance("tcp://docker.baeldung.com:2375").build();
      

      请注意,我们需要根据连接类型在连接字符串前面加上 unix:// 或 tcp://。

      【讨论】:

        猜你喜欢
        • 2016-04-23
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2010-09-09
        • 1970-01-01
        • 2016-01-10
        • 1970-01-01
        相关资源
        最近更新 更多