简易Docker磁盘使用面板Doku
这个项目似乎有
1年多没更新了,最后发布版本的问题也没人修复,所以看看就行,不建议安装
什么是 Doku ?
Doku是一个简单、轻量级的基于Web的应用程序,允许您以用户友好的方式监控Docker磁盘使用情况。Doku显示Docker守护进程使用的磁盘空间量,按图像、容器、卷和构建器缓存划分。Doku是Glances的绝佳替代品。
安装
在群晖上以 Docker 方式安装。
在注册表中搜索 amerkurev ,选择第一个 amerkurev/doku,版本选择 latest。
本文开始写作时,
latest版本对应为v0.0.16;

但是这个版本会加载不出来, 一直显示 loading,日志显示 failed to execute request: docker disk usage" err="Error response from daemon: a disk usage operation is already running
在官方的 Issues 也有人提到这个问题:https://github.com/amerkurev/doku/issues/22

而之前折腾的 v0.0.15 虽然慢,但却是正常的,不知道问题出在哪里

命令行安装
与容器相关的应用,都需要绑定挂载 /var/run/docker.sock ,包括我们之前安装的 portainer、watchtower,Glances,Netdata 等。
什么是 /var/run/docker.sock ?
/var/run/docker.sock是Docker API的主要入口,简单地说,它是Docker守护进程(Docker daemon)默认监听的Unix域套接字(Unix domain socket),容器中的进程可以通过它与Docker守护进程进行通信。

图片来自:https://betterprogramming.pub/about-var-run-docker-sock-3bfd276e12fd
但是群晖的 Docker 管理器并不支持挂载 /var/run/docker.sock 文件,所以这次我们需用命令行来安装
docker cli 安装
如果你熟悉命令行,可能用 docker cli 更快捷
1 | # 运行容器 |
| 文件夹 | 装载路径 | 说明 |
|---|---|---|
/var/run/docker.sock |
/var/run/docker.sock |
看前面的描述 |
/ |
/hostroot |
挂载主机上的顶级目录,否则 Doku 无法计算日志和绑定挂载的大小 |
其中,
:ro表示以只读方式
docker-compose 安装
也可以用 docker-compose 安装,将下面的内容保存为 docker-compose.yml 文件
1 | version: "3" |
然后执行下面的命令
1 | # 新建文件夹 doku |
运行
在浏览器中输入 http://群晖IP:9093 ,稍等一会儿就能看到主界面

再多等一会儿,数据会逐渐加载出来

居然有 92 个镜像,这一天天的,都在折腾啥呢?

容器有 52 个

卷的信息

Bind Mounts 信息

日志信息

Build Cache ,估计是构建镜像过程中的缓存吧?
参考文档
amerkurev/doku: 💽 Doku - Docker disk usage dashboard
地址:https://github.com/amerkurev/dokuDoku - Docker disk usage dashboard
地址:https://docker-disk.space/