docker 安装 netdata
- 前提准备
- Docker 两种方式部署 Netdata
- 1、使用 docker run 命令运行 netdata 服务
- 2、使用 docker compose 运行 netdata 服务
- Netdata 服务可视化界面
- Netdata 汉化处理
前提准备
说明:此处使用
windows11
安装的docker desktop & wsl2/apline
环境配置netdata
服务。
Windows 11
安装 Docker Desktop
,请参考:https://mp.weixin.qq.com/s/vD8JDGM4ardqmcL9W0cp8Q
- 拉取
netdata
镜像
docker pull netdata/netdata
此处为了方便后面部署速度快点,先拉取镜像到本地环境。
- 创建
volume
挂载目录
# 在 E 盘下面创建 docker-volumes 文件夹
cd E:\docker-volumes
# 创建 netdata 的挂载目录
mkdir -p /data/netdata/{netdatacache,netdatalib}
目录结构信息如下:
PS E:\docker-volumes> ls目录: E:\docker-volumesMode LastWriteTime Length Name
---- ------------- ------ ----
d----- 2024/4/5 22:25 data
-a---- 2024/4/5 22:22 804 netdata-compose.yaml
Docker 两种方式部署 Netdata
1、使用 docker run 命令运行 netdata 服务
docker run -d --name=netdata \--container_name=netdata \--hostname=netdata \-p 19999:19999 \-v /data/netdata/netdatalib:/var/lib/netdata \-v /data/netdata/netdatacache:/var/cache/netdata \-v /etc/passwd:/host/etc/passwd:ro \-v /etc/group:/host/etc/group:ro \-v /proc:/host/proc:ro \-v /sys:/host/sys:ro \-v /etc/os-release:/host/etc/os-release:ro \--restart always \--cap-add SYS_PTRACE \--security-opt apparmor=unconfined \netdata/netdata
2、使用 docker compose 运行 netdata 服务
netdata-compose.yaml
文件编写如下:
version: '3'
services:netdata:image: netdata/netdatacontainer_name: netdatahostname: netdatarestart: unless-stoppedcap_add:- SYS_PTRACE- SYS_ADMINsecurity_opt:- apparmor:unconfinedports:- 19999:19999volumes:- ./data/netdata/netdataconfig/netdata:/etc/netdata- ./data/netdata/netdatalib:/var/lib/netdata- netdatacache:/var/cache/netdata- /etc/passwd:/host/etc/passwd:ro- /etc/group:/host/etc/group:ro- /etc/localtime:/etc/localtime:ro- /proc:/host/proc:ro- /sys:/host/sys:ro- /etc/os-release:/host/etc/os-release:ro- /var/log:/host/var/log:ro- /var/run/docker.sock:/var/run/docker.sock:rovolumes:netdatalib:netdatacache:
- 执行
docker compose
命令启动netdata
服务:
PS E:\docker-volumes> docker compose -f .\netdata-compose.yaml up -d
[+] Running 1/2- Network docker-volumes_default Created 0.3s✔ Container netdata Started 0.3s
PS E:\docker-volumes> docker compose ls
NAME STATUS CONFIG FILES
docker-volumes running(1) E:\docker-volumes\netdata-compose.yaml
docker desktop
运行情况
netdata
服务宿主资源监控
Netdata 服务可视化界面
- 浏览器查看
netdata
可视化监控页面
http://localhost:19999/
System Overview
Memory
Disks
Mount Points
IP Virtual Server
Networking Stack
Users
Netdata 汉化处理
- 下载汉化文件,我这直接
git
拉取
git clone https://gitee.com/DXLinux/Netdata-chinese-patch.git[root@jeff netdata]# ll Netdata-chinese-patch/
total 836
-rwxr-xr-x 1 root root 125124 Aug 7 16:24 dashboard_info.js
-rwxr-xr-x 1 root root 379728 Aug 7 16:24 dashboard.js
-rwxr-xr-x 1 root root 134097 Aug 7 16:24 index.html
-rw-r--r-- 1 root root 720 Aug 7 16:24 install-Netdata-chinese-patch.sh
-rwxr-xr-x 1 root root 20223 Aug 7 16:24 install-Netdata-chinese.sh
-rwxr-xr-x 1 root root 182742 Aug 7 16:24 main.js
-rwxr-xr-x 1 root root 1503 Aug 7 16:24 README.md
- 修改
dashboard.js
文件
[root@jeff Netdata-chinese-patch]# vi dashboard.js
- 快速搜索定位
/NETDATA.jQuery
,将jquery
版本修改成jquery-3.6.0.min.js
NETDATA.jQuery = NETDATA.serverStatic + 'lib/jquery-3.6.0.min.js';
- 进入
netdata
容器
docker exec -it netdata bash
- 切换到
web
目录下
cd /usr/share/netdata/web
- 将
dashboard_info.js、dashboard.js、index.html、main.js
这几个文件删除,退出容器
rm -rf dashboard_info.js
rm -rf dashboard.js
rm -rf index.html
rm -rf main.js
- 再将汉化的
4
个文件拷贝进容器
docker cp dashboard_info.js ./data/netdata/web:/usr/share/netdata/web
docker cp dashboard.js ./data/netdata/web:/usr/share/netdata/web
docker cp index.html ./data/netdata/web:/usr/share/netdata/web
docker cp main.js ./data/netdata/web:/usr/share/netdata/web
- 重启
netdata
容器
docker restart netdata
参考文章:
- 官方文档,
https://learn.netdata.cloud/docs/netdata-agent/installation/docker
Linux
安装系统可视化监控工具Netdata
,https://blog.csdn.net/ChaITSimpleLove/article/details/137400396