124 lines
6.3 KiB
Diff
124 lines
6.3 KiB
Diff
|
|
From b6bb388d21f3eac7565eddcfabaf9845bfa71454 Mon Sep 17 00:00:00 2001
|
|||
|
|
From: Vchanger <vchanger123456@163.com>
|
|||
|
|
Date: Mon, 21 Nov 2022 14:36:14 +0800
|
|||
|
|
Subject: [PATCH] move docs about creating and running in docker
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
README.md | 41 ++++++++++++++++++++++++++++--
|
|||
|
|
doc/how_to_build_docker_image.md | 43 --------------------------------
|
|||
|
|
2 files changed, 39 insertions(+), 45 deletions(-)
|
|||
|
|
|
|||
|
|
diff --git a/README.md b/README.md
|
|||
|
|
index b38ba22..fd00153 100644
|
|||
|
|
--- a/README.md
|
|||
|
|
+++ b/README.md
|
|||
|
|
@@ -67,12 +67,49 @@ gala-gopher集成了常用的native探针以及知名中间件探针;gala-goph
|
|||
|
|
|
|||
|
|
用于生成容器镜像的Dockerfile文件归档在[build目录](./build),生成方法详见[如何生成gala-gopher容器镜像](doc/how_to_build_docker_image.md)。
|
|||
|
|
|
|||
|
|
-- 运行容器
|
|||
|
|
+- 创建并运行容器
|
|||
|
|
+
|
|||
|
|
+ gala-gopher涉及两个配置文件:gala-gopher.conf和gala-gopher-app.conf。gala-gopher.conf主要用于配置探针的数据上报开关、探针参数、探针是否开启等;gala-gopher-app.conf是观测白名单,可以把用户感兴趣的进程名加入白名单,gala-gopher就会观测这个进程了。
|
|||
|
|
+
|
|||
|
|
+ 容器启动前需要用户自定义配置这两个配置文件,请在宿主机创建配置文件目录,并将[config目录](./config)下两个配置文件保存到该目录,示例如下:
|
|||
|
|
|
|||
|
|
```shell
|
|||
|
|
- # docker run -d --name xxx -p 8888:8888 --privileged -v /lib/modules:/lib/modules:ro -v /usr/src:/usr/src:ro -v /boot:/boot:ro -v /sys/kernel/debug:/sys/kernel/debug -v /sys/fs/bpf:/sys/fs/bpf -v /root/gopher_user_conf:/gala-gopher/user_conf/ -v /etc/machine-id:/etc/machine-id -v /etc/localtime:/etc/localtime:ro --pid=host gala-gopher:0.0.1
|
|||
|
|
+ [root@localhost ~]# mkdir gopher_user_conf
|
|||
|
|
+ [root@localhost gopher_user_conf]# ll
|
|||
|
|
+ total 8.0K
|
|||
|
|
+ -rw-r--r--. 1 root root 3.2K Jun 28 09:43 gala-gopher.conf
|
|||
|
|
+ -rw-r--r--. 1 root root 108 Jun 27 21:45 gala-gopher-app.conf
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
+ 请按照[配置文件介绍](./doc/conf_introduction.md)自定义修改配置文件。在执行docker run命令时,需要将宿主机上自定义的配置文件目录和容器内/gala-gopher/user_conf目录映射,从而将自定义的配置信息同步到容器内。
|
|||
|
|
+
|
|||
|
|
+ 最后按照如下示例命令启动容器:
|
|||
|
|
+
|
|||
|
|
+ ```shell
|
|||
|
|
+ docker run -d --name xxx -p 8888:8888 --privileged -v /etc/machine-id:/etc/machine-id -v /lib/modules:/lib/modules:ro -v /usr/src:/usr/src:ro -v /boot:/boot:ro -v /sys/kernel/debug:/sys/kernel/debug -v /sys/fs/bpf:/sys/fs/bpf -v /root/gopher_user_conf:/gala-gopher/user_conf/ -v /etc/localtime:/etc/localtime:ro --pid=host gala-gopher:0.0.1
|
|||
|
|
+ ```
|
|||
|
|
+
|
|||
|
|
+ 成功启动容器后,通过docker ps可以看到正在运行的容器:
|
|||
|
|
+
|
|||
|
|
+ ```shell
|
|||
|
|
+ [root@localhost build]# docker ps
|
|||
|
|
+ CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
|
|||
|
|
+ eaxxxxxxxx02 gala-gopher:0.0.1 "/bin/sh -c 'cp -f /…" About a minute ago Up About a minute 0.0.0.0:8888->8888/tcp xxx
|
|||
|
|
+ ```
|
|||
|
|
+
|
|||
|
|
+- 获取数据
|
|||
|
|
+
|
|||
|
|
+ 如上步骤docker run命令中所示,我们映射了宿主机8888端口和容器的8888端口,因而可以通过8888端口获取数据来验证gala-gopher是否运行成功:
|
|||
|
|
+
|
|||
|
|
+ ```shell
|
|||
|
|
+ [root@localhost build]# curl http://localhost:8888
|
|||
|
|
+ ...
|
|||
|
|
+ gala_gopher_udp_que_rcv_drops{tgid="1234",s_addr="192.168.12.34",machine_id="xxxxx",hostname="eaxxxxxxxx02"} 0 1656383357000
|
|||
|
|
+ ...
|
|||
|
|
+ ```
|
|||
|
|
+
|
|||
|
|
+ 如上有指标数据输出则证明gala-gopher运行成功。
|
|||
|
|
+
|
|||
|
|
#### 基于源码编译、安装、运行
|
|||
|
|
|
|||
|
|
##### 仅编译二进制
|
|||
|
|
diff --git a/doc/how_to_build_docker_image.md b/doc/how_to_build_docker_image.md
|
|||
|
|
index 6955f5b..c2b147d 100644
|
|||
|
|
--- a/doc/how_to_build_docker_image.md
|
|||
|
|
+++ b/doc/how_to_build_docker_image.md
|
|||
|
|
@@ -69,49 +69,6 @@
|
|||
|
|
gala-gopher 0.0.1 211913592b58 22 minutes ago 614MB
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
-### 创建并运行容器
|
|||
|
|
-
|
|||
|
|
-gala-gopher涉及两个配置文件:gala-gopher.conf和task_whitelist.conf。gala-gopher.conf主要用于配置探针的数据上报开关、探针参数、探针是否开启等;task_whitelist.conf是观测白名单,可以把用户感兴趣的进程名加入白名单,gala-gopher就会观测这个进程了。
|
|||
|
|
-
|
|||
|
|
-容器启动前需要用户自定义配置这两个配置文件,请在宿主机创建配置文件目录,并将[config目录](../config)下两个配置文件保存到该目录,示例如下:
|
|||
|
|
-
|
|||
|
|
-```shell
|
|||
|
|
-[root@localhost ~]# mkdir gopher_user_conf
|
|||
|
|
-[root@localhost gopher_user_conf]# ll
|
|||
|
|
-total 8.0K
|
|||
|
|
--rw-r--r--. 1 root root 3.2K Jun 28 09:43 gala-gopher.conf
|
|||
|
|
--rw-r--r--. 1 root root 108 Jun 27 21:45 gala-gopher-app.conf
|
|||
|
|
-```
|
|||
|
|
-
|
|||
|
|
-请按照[配置文件介绍](conf_introduction.md)自定义修改配置文件。在执行docker run命令时,需要将宿主机上自定义的配置文件目录和容器内/gala-gopher/user_conf目录映射,从而将自定义的配置信息同步到容器内。
|
|||
|
|
-
|
|||
|
|
-最后按照如下示例命令启动容器:
|
|||
|
|
-
|
|||
|
|
-```shell
|
|||
|
|
-docker run -d --name xxx -p 8888:8888 --privileged -v /etc/machine-id:/etc/machine-id -v /lib/modules:/lib/modules:ro -v /usr/src:/usr/src:ro -v /boot:/boot:ro -v /sys/kernel/debug:/sys/kernel/debug -v /sys/fs/bpf:/sys/fs/bpf -v /root/gopher_user_conf:/gala-gopher/user_conf/ -v /etc/localtime:/etc/localtime:ro --pid=host gala-gopher:0.0.1
|
|||
|
|
-```
|
|||
|
|
-
|
|||
|
|
-成功启动容器后,通过docker ps可以看到正在运行的容器:
|
|||
|
|
-
|
|||
|
|
-```shell
|
|||
|
|
-[root@localhost build]# docker ps
|
|||
|
|
-CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
|
|||
|
|
-eaxxxxxxxx02 gala-gopher:0.0.1 "/bin/sh -c 'cp -f /…" About a minute ago Up About a minute 0.0.0.0:8888->8888/tcp xxx
|
|||
|
|
-```
|
|||
|
|
-
|
|||
|
|
-### 获取数据
|
|||
|
|
-
|
|||
|
|
-如上步骤docker run命令中所示,我们映射了宿主机8888端口和容器的8888端口,因而可以通过8888端口获取数据来验证gala-gopher是否运行成功:
|
|||
|
|
-
|
|||
|
|
-```shell
|
|||
|
|
-[root@localhost build]# curl http://localhost:8888
|
|||
|
|
-...
|
|||
|
|
-gala_gopher_udp_que_rcv_drops{tgid="1234",s_addr="192.168.12.34",machine_id="xxxxx",hostname="eaxxxxxxxx02"} 0 1656383357000
|
|||
|
|
-...
|
|||
|
|
-```
|
|||
|
|
-
|
|||
|
|
-如上有指标数据输出则证明gala-gopher运行成功。
|
|||
|
|
-
|
|||
|
|
### 保存容器镜像
|
|||
|
|
|
|||
|
|
生成容器镜像后可以将镜像保存为tar文件,其他宿主机可以通过load命令导入容器镜像:
|
|||
|
|
--
|
|||
|
|
2.36.0.windows.1
|
|||
|
|
|