diff --git a/docs-cn/14-reference/03-connector/03-connector.mdx b/docs-cn/14-reference/03-connector/03-connector.mdx
index c0e714f148a7821e070be38a5484484fdd747e9a..408337a6d7bd184d1e24ea45f82ac7bc0c5542ce 100644
--- a/docs-cn/14-reference/03-connector/03-connector.mdx
+++ b/docs-cn/14-reference/03-connector/03-connector.mdx
@@ -4,7 +4,7 @@ title: 连接器
TDengine 提供了丰富的应用程序开发接口,为了便于用户快速开发自己的应用,TDengine 支持了多种编程语言的连接器,其中官方连接器包括支持 C/C++、Java、Python、Go、Node.js、C# 和 Rust 的连接器。这些连接器支持使用原生接口(taosc)和 REST 接口(部分语言暂不支持)连接 TDengine 集群。社区开发者也贡献了多个非官方连接器,例如 ADO.NET 连接器、Lua 连接器和 PHP 连接器。
-![image-connector](/img/connector.png)
+![image-connector](./connector.png)
## 支持的平台
diff --git a/docs-cn/14-reference/03-connector/connector.png b/docs-cn/14-reference/03-connector/connector.png
new file mode 100644
index 0000000000000000000000000000000000000000..6030bd73f51123615eabacfa5d734918559ce3d9
Binary files /dev/null and b/docs-cn/14-reference/03-connector/connector.png differ
diff --git a/docs-cn/20-third-party/01-grafana.mdx b/docs-cn/20-third-party/01-grafana.mdx
index 9a4c33d8aceb086ff8ba8dca0f38b1bcbf762005..9a75939f7a51055fc90e1b7f243f1bb042fd79f7 100644
--- a/docs-cn/20-third-party/01-grafana.mdx
+++ b/docs-cn/20-third-party/01-grafana.mdx
@@ -64,15 +64,15 @@ GF_PLUGINS_ALLOW_LOADING_UNSIGNED_PLUGINS=tdengine-datasource
用户可以直接通过 http://localhost:3000 的网址,登录 Grafana 服务器(用户名/密码:admin/admin),通过左侧 `Configuration -> Data Sources` 可以添加数据源,如下图所示:
-![img](/img/connections/add_datasource1.jpg)
+![img](./add_datasource1.jpg)
点击 `Add data source` 可进入新增数据源页面,在查询框中输入 TDengine 可选择添加,如下图所示:
-![img](/img/connections/add_datasource2.jpg)
+![img](./add_datasource2.jpg)
进入数据源配置页面,按照默认提示修改相应配置即可:
-![img](/img/connections/add_datasource3.jpg)
+![img](./add_datasource3.jpg)
- Host: TDengine 集群中提供 REST 服务 (在 2.4 之前由 taosd 提供, 从 2.4 开始由 taosAdapter 提供)的组件所在服务器的 IP 地址与 TDengine REST 服务的端口号(6041),默认 http://localhost:6041。
- User:TDengine 用户名。
@@ -80,13 +80,13 @@ GF_PLUGINS_ALLOW_LOADING_UNSIGNED_PLUGINS=tdengine-datasource
点击 `Save & Test` 进行测试,成功会有如下提示:
-![img](/img/connections/add_datasource4.jpg)
+![img](./add_datasource4.jpg)
### 创建 Dashboard
回到主界面创建 Dashboard,点击 Add Query 进入面板查询页面:
-![img](/img/connections/create_dashboard1.jpg)
+![img](./create_dashboard1.jpg)
如上图所示,在 Query 中选中 `TDengine` 数据源,在下方查询框可输入相应 SQL 进行查询,具体说明如下:
@@ -96,7 +96,7 @@ GF_PLUGINS_ALLOW_LOADING_UNSIGNED_PLUGINS=tdengine-datasource
按照默认提示查询当前 TDengine 部署所在服务器指定间隔系统内存平均使用量如下:
-![img](/img/connections/create_dashboard2.jpg)
+![img](./create_dashboard2.jpg)
> 关于如何使用 Grafana 创建相应的监测界面以及更多有关使用 Grafana 的信息,请参考 Grafana 官方的[文档](https://grafana.com/docs/)。
diff --git a/docs-cn/20-third-party/add_datasource1.jpg b/docs-cn/20-third-party/add_datasource1.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..1f0f5110f312c57f3ec1788bbc02f04fac6ac142
Binary files /dev/null and b/docs-cn/20-third-party/add_datasource1.jpg differ
diff --git a/docs-cn/20-third-party/add_datasource2.jpg b/docs-cn/20-third-party/add_datasource2.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..fa7a83e00e96fae649910dff4edf5f5bdadd7850
Binary files /dev/null and b/docs-cn/20-third-party/add_datasource2.jpg differ
diff --git a/docs-cn/20-third-party/add_datasource3.jpg b/docs-cn/20-third-party/add_datasource3.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..fc850ad08ff1174de972906842e0d5ee64e6e5cb
Binary files /dev/null and b/docs-cn/20-third-party/add_datasource3.jpg differ
diff --git a/docs-cn/20-third-party/add_datasource4.jpg b/docs-cn/20-third-party/add_datasource4.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..3ba73e50d455111f8621f4165746078554c2d790
Binary files /dev/null and b/docs-cn/20-third-party/add_datasource4.jpg differ
diff --git a/docs-cn/20-third-party/create_dashboard1.jpg b/docs-cn/20-third-party/create_dashboard1.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..3b83c3a1714e9e7540e0b06239ef7c1c4f63fe2c
Binary files /dev/null and b/docs-cn/20-third-party/create_dashboard1.jpg differ
diff --git a/docs-cn/20-third-party/create_dashboard2.jpg b/docs-cn/20-third-party/create_dashboard2.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..fe5d768ac55254251e0290bf257178f5ff28f5a5
Binary files /dev/null and b/docs-cn/20-third-party/create_dashboard2.jpg differ
diff --git a/docs-cn/20-third-party/dashboard-15146.png b/docs-cn/20-third-party/dashboard-15146.png
new file mode 100644
index 0000000000000000000000000000000000000000..3eb240ad8ad648953e32f27e674e2a9171ed9af8
Binary files /dev/null and b/docs-cn/20-third-party/dashboard-15146.png differ
diff --git a/docs-cn/20-third-party/import_dashboard1.jpg b/docs-cn/20-third-party/import_dashboard1.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..9d2ce7ed65eb0c2c729de50283b30491793493dc
Binary files /dev/null and b/docs-cn/20-third-party/import_dashboard1.jpg differ
diff --git a/docs-cn/20-third-party/import_dashboard2.jpg b/docs-cn/20-third-party/import_dashboard2.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..94b09f0ee39552bb84f7ba1f65815ce2c9548b2d
Binary files /dev/null and b/docs-cn/20-third-party/import_dashboard2.jpg differ
diff --git a/docs-cn/21-tdinternal/01-arch.md b/docs-cn/21-tdinternal/01-arch.md
index 6f479efc1ad13e27899e7819d194a2df59ed3ad1..8577309744de14ae43aedee9e754214d8656ab86 100644
--- a/docs-cn/21-tdinternal/01-arch.md
+++ b/docs-cn/21-tdinternal/01-arch.md
@@ -11,7 +11,7 @@ TDengine 的设计是基于单个硬件、软件系统不可靠,基于任何
TDengine 分布式架构的逻辑结构图如下:
-![TDengine架构示意图](/img/architecture/structure.png)
+![TDengine架构示意图](./structure.png)
图 1 TDengine架构示意图
@@ -63,7 +63,7 @@ TDengine 分布式架构的逻辑结构图如下:
为解释 vnode、mnode、taosc 和应用之间的关系以及各自扮演的角色,下面对写入数据这个典型操作的流程进行剖析。
-![TDengine典型的操作流程](/img/architecture/message.png)
+![TDengine典型的操作流程](./message.png)
图 2 TDengine 典型的操作流程
@@ -135,7 +135,7 @@ TDengine 除 vnode 分片之外,还对时序数据按照时间段进行分区
Master Vnode 遵循下面的写入流程:
-![TDengine Master写入流程](/img/architecture/write_master.png)
+![TDengine Master写入流程](./write_master.png)
图 3 TDengine Master 写入流程
@@ -150,7 +150,7 @@ Master Vnode 遵循下面的写入流程:
对于 slave vnode,写入流程是:
-![TDengine Slave 写入流程](/img/architecture/write_slave.png)
+![TDengine Slave 写入流程](./write_slave.png)
图 4 TDengine Slave 写入流程
@@ -284,7 +284,7 @@ SELECT COUNT(*) FROM d1001 WHERE ts >= '2017-7-14 00:00:00' AND ts < '2017-7-14
TDengine 对每个数据采集点单独建表,但在实际应用中经常需要对不同的采集点数据进行聚合。为高效的进行聚合操作,TDengine 引入超级表(STable)的概念。超级表用来代表一特定类型的数据采集点,它是包含多张表的表集合,集合里每张表的模式(schema)完全一致,但每张表都带有自己的静态标签,标签可以有多个,可以随时增加、删除和修改。应用可通过指定标签的过滤条件,对一个 STable 下的全部或部分表进行聚合或统计操作,这样大大简化应用的开发。其具体流程如下图所示:
-![多表聚合查询原理图](/img/architecture/multi_tables.png)
+![多表聚合查询原理图](./multi_tables.png)
图 5 多表聚合查询原理图
diff --git a/docs-cn/21-tdinternal/dnode.png b/docs-cn/21-tdinternal/dnode.png
new file mode 100644
index 0000000000000000000000000000000000000000..cea87dcccba5d2761996e5dde998022d86487eb9
Binary files /dev/null and b/docs-cn/21-tdinternal/dnode.png differ
diff --git a/docs-cn/21-tdinternal/message.png b/docs-cn/21-tdinternal/message.png
new file mode 100644
index 0000000000000000000000000000000000000000..715a8bd37ee9fe7e96eacce4e7ff563fedeefbee
Binary files /dev/null and b/docs-cn/21-tdinternal/message.png differ
diff --git a/docs-cn/21-tdinternal/modules.png b/docs-cn/21-tdinternal/modules.png
new file mode 100644
index 0000000000000000000000000000000000000000..10ae4703a6cbbf66afea325ce4c0f919f7769a07
Binary files /dev/null and b/docs-cn/21-tdinternal/modules.png differ
diff --git a/docs-cn/21-tdinternal/multi_tables.png b/docs-cn/21-tdinternal/multi_tables.png
new file mode 100644
index 0000000000000000000000000000000000000000..0cefaab6a9a4cdd671c671f7c6186dea41415ff0
Binary files /dev/null and b/docs-cn/21-tdinternal/multi_tables.png differ
diff --git a/docs-cn/21-tdinternal/replica-forward.png b/docs-cn/21-tdinternal/replica-forward.png
new file mode 100644
index 0000000000000000000000000000000000000000..bf616e030b130603eceb5dccfd30b4a1dfa68ea5
Binary files /dev/null and b/docs-cn/21-tdinternal/replica-forward.png differ
diff --git a/docs-cn/21-tdinternal/replica-master.png b/docs-cn/21-tdinternal/replica-master.png
new file mode 100644
index 0000000000000000000000000000000000000000..cb33f1ce98661563693215d8fc73b003235c7668
Binary files /dev/null and b/docs-cn/21-tdinternal/replica-master.png differ
diff --git a/docs-cn/21-tdinternal/replica-restore.png b/docs-cn/21-tdinternal/replica-restore.png
new file mode 100644
index 0000000000000000000000000000000000000000..1558e5ed0108d23efdc6b5d9ea0e44a1dff45d28
Binary files /dev/null and b/docs-cn/21-tdinternal/replica-restore.png differ
diff --git a/docs-cn/21-tdinternal/structure.png b/docs-cn/21-tdinternal/structure.png
new file mode 100644
index 0000000000000000000000000000000000000000..4fc8f47ab0a30d95b85ba1d85105726ed981e56e
Binary files /dev/null and b/docs-cn/21-tdinternal/structure.png differ
diff --git a/docs-cn/21-tdinternal/vnode.png b/docs-cn/21-tdinternal/vnode.png
new file mode 100644
index 0000000000000000000000000000000000000000..e6148d4907cf9a18bc52251f712d5c685651b7f5
Binary files /dev/null and b/docs-cn/21-tdinternal/vnode.png differ
diff --git a/docs-cn/21-tdinternal/write_master.png b/docs-cn/21-tdinternal/write_master.png
new file mode 100644
index 0000000000000000000000000000000000000000..ff2dfc20bfc2ecf956a2aab1a8965a7bbcae4387
Binary files /dev/null and b/docs-cn/21-tdinternal/write_master.png differ
diff --git a/docs-cn/21-tdinternal/write_slave.png b/docs-cn/21-tdinternal/write_slave.png
new file mode 100644
index 0000000000000000000000000000000000000000..cacb2cb6bcc4f4d934e979862387e1345bbac078
Binary files /dev/null and b/docs-cn/21-tdinternal/write_slave.png differ
diff --git a/docs-cn/25-application/01-telegraf.md b/docs-cn/25-application/01-telegraf.md
index f63a6701eed2b4c5b98f577d5b2867ae6dada387..447568cbbdae3bef6e227f696bd35c8e7a7a147f 100644
--- a/docs-cn/25-application/01-telegraf.md
+++ b/docs-cn/25-application/01-telegraf.md
@@ -16,7 +16,7 @@ IT 运维监测数据通常都是对时间特性比较敏感的数据,例如
本文介绍不需要写一行代码,通过简单修改几行配置文件,就可以快速搭建一个基于 TDengine + Telegraf + Grafana 的 IT 运维系统。架构如下图:
-![IT-DevOps-Solutions-Telegraf.png](/img/IT-DevOps-Solutions-Telegraf.png)
+![IT-DevOps-Solutions-Telegraf.png](./IT-DevOps-Solutions-Telegraf.png)
## 安装步骤
@@ -75,7 +75,7 @@ sudo systemctl start telegraf
点击左侧齿轮图标并选择 `Plugins`,应该可以找到 TDengine data source 插件图标。
点击左侧加号图标并选择 `Import`,从 `https://github.com/taosdata/grafanaplugin/blob/master/examples/telegraf/grafana/dashboards/telegraf-dashboard-v0.1.0.json` 下载 dashboard JSON 文件后导入。之后可以看到如下界面的仪表盘:
-![IT-DevOps-Solutions-telegraf-dashboard.png](/img/IT-DevOps-Solutions-telegraf-dashboard.png)
+![IT-DevOps-Solutions-telegraf-dashboard.png]./IT-DevOps-Solutions-telegraf-dashboard.png)
## 总结
diff --git a/docs-cn/25-application/02-collectd.md b/docs-cn/25-application/02-collectd.md
index 5e6bc6577b2f4c8564e4533ced745d0b214ec748..920e2de3a56632370d4b8b90a773453475deca93 100644
--- a/docs-cn/25-application/02-collectd.md
+++ b/docs-cn/25-application/02-collectd.md
@@ -16,7 +16,7 @@ IT 运维监测数据通常都是对时间特性比较敏感的数据,例如
本文介绍不需要写一行代码,通过简单修改几行配置文件,就可以快速搭建一个基于 TDengine + collectd / statsD + Grafana 的 IT 运维系统。架构如下图:
-![IT-DevOps-Solutions-Collectd-StatsD.png](/img/IT-DevOps-Solutions-Collectd-StatsD.png)
+![IT-DevOps-Solutions-Collectd-StatsD.png](./IT-DevOps-Solutions-Collectd-StatsD.png)
## 安装步骤
@@ -81,12 +81,12 @@ repeater 部分添加 { host:'', port: