我只想分享一个我用来增强docker stats命令的小脚本。我不确定这种方法的正确性。
我是否可以假设整个Docker部署消耗的内存总量是每个容器消耗的内存之和?
请分享您的修改和/或更正。此命令记录在此处:https : //docs.docker.com/engine/reference/commandline/stats/
运行docker stats时,输出如下所示:
$ docker stats --all --format "table {{.MemPerc}}\t{{.CPUPerc}}\t{{.MemUsage}}\t{{.Name}}"
MEM % CPU % MEM USAGE / LIMIT NAME
0.50% 1.00% 77.85MiB / 15.57GiB ecstatic_noether
1.50% 3.50% 233.55MiB / 15.57GiB stoic_goodall
0.25% 0.50% 38.92MiB / 15.57GiB drunk_visvesvaraya
Run Code Online (Sandbox Code Playgroud)
我的脚本将在末尾添加以下行:
2.25% 5.00% 350.32MiB / 15.57GiB TOTAL
Run Code Online (Sandbox Code Playgroud)
docker_stats.sh
#!/bin/bash
# This script is used to complete the output of the docker stats command.
# The docker stats command does not compute the total amount of resources (RAM …Run Code Online (Sandbox Code Playgroud) 我正在将我之前使用 docker-compose 进行的部署迁移到 Kubernetes。在我之前的部署中,某些容器确实在某些路径中在构建时生成了一些数据,并且这些路径安装在持久卷中。因此,正如Docker 卷文档所述,持久卷(不是绑定安装)将预先填充容器目录内容。
我想用 Kubernetes 及其持久卷实现这种行为,我该怎么做?我是否需要使用脚本添加某种逻辑,以便在容器第一次启动时数据不存在时将容器的文件复制到安装路径?
可能相关的问题:Kubernetes 在现有目录上挂载卷,容器内有文件