這個項目似乎有
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
更快捷
# 運行容器
docker run -d \--restart unless-stopped \--name doku \-p 9093:9090 \-v /var/run/docker.sock:/var/run/docker.sock:ro \-v /:/hostroot:ro \amerkurev/doku:v0.0.15
文件夾 | 裝載路徑 | 說明 |
---|---|---|
/var/run/docker.sock | /var/run/docker.sock | 看前面的描述 |
/ | /hostroot | 掛載主機上的頂級目錄,否則 Doku 無法計算日志和綁定掛載的大小 |
其中,
:ro
表示以只讀方式
docker-compose 安裝
也可以用 docker-compose
安裝,將下面的內容保存為 docker-compose.yml
文件
version: "3"services:doku:image: amerkurev/doku:v0.0.15container_name: dokurestart: unless-stoppedports:- 9093:9090volumes:- /var/run/docker.sock:/var/run/docker.sock:ro- /:/hostroot:ro
然后執行下面的命令
# 新建文件夾 doku
mkdir -p /volume1/docker/doku# 進入 doku 目錄
cd /volume1/docker/doku# 將 docker-compose.yml 放入當前目錄# 一鍵啟動
docker-compose up -d
運行
在瀏覽器中輸入 http://群暉IP:9093
,稍等一會兒就能看到主界面
再多等一會兒,數據會逐漸加載出來
居然有 92
個鏡像,這一天天的,都在折騰啥呢?
容器有 52
個
卷的信息
Bind Mounts
信息
日志信息
Build Cache
,估計是構建鏡像過程中的緩存吧?
參考文檔
amerkurev/doku: 💽 Doku - Docker disk usage dashboard
地址:https://github.com/amerkurev/doku
Doku - Docker disk usage dashboard
地址:https://docker-disk.space/