docs: update

This commit is contained in:
tangtaoit 2023-06-29 19:28:04 +08:00
parent 1973a3010b
commit 481bbce300
8 changed files with 90 additions and 12 deletions

View File

@ -25,6 +25,7 @@ export const sidebar: DefaultTheme.Sidebar = {
text: "进阶",
collapsed: false,
items: [
{ text: "最佳实践", link: "/guide/practice" },
{ text: "配置说明", link: "/guide/fullconfig" },
{ text: "WSS 配置", link: "/guide/wss" },
{ text: "命令行工具", link: "/guide/cli" },

View File

@ -15,6 +15,10 @@ body的数据类似为 [uid1-0-1,uid2-1-0]
```
图解webhook
![webhook](./webhook.png)
以下为具体 webhook 详情
## 用户在线状态通知

BIN
src/api/webhook.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 MiB

View File

@ -5,32 +5,37 @@
配置文件默认在此目录下(如果没有就创建一个): /wukongim/wk.yaml
```yaml
mode: 'debug' # 运行模式 模式 debug 测试 release 正式 bench 压力测试
mode: "debug" # 运行模式 模式 debug 测试 release 正式 bench 压力测试
# Addr: "tcp://0.0.0.0:5100" # tcp监听地址
# httpAddr: "0.0.0.0:5001" # http api的监听地址 默认0.0.0.0:5001
# dataDir: ~/wukongimdata # 数据存储目录
# tokenAuthOn: false # 是否开启token验证 默认为false如果不开启任何人都可以连接到此节点生产环境建议开启
# managerToken: "" # 管理员token 如果此字段有值则API接口需要在请求头中添加token字段值为此字段的值
# wsAddr: "" # websocket ws 监听地址 例如ws://0.0.0.0:5200
# wsAddr: "" # websocket ws 监听地址 例如ws://0.0.0.0:5200
# wssAddr: "" # websocket wss 监听地址 例如wss://0.0.0.0:5210
external:
ip: '' # 如果节点部署在内网需要配置外网ip否则外网的客户端无法连接到此节点
ip: "" # 如果节点部署在内网需要配置外网ip否则外网的客户端无法连接到此节点
# tcpAddr: "" # 默认自动获取, 节点的TCP地址 对外公开APP端长连接通讯 格式: ip:port (支持域名配置)
# wsAddr: "" # 默认自动获取, 节点的wsAdd地址 对外公开 WEB端长连接通讯 格式: ws://ip:port (支持域名配置)
# wssAddr: "" # 配置wss地址如果不配置则不开启wss如果配置了wss则必须配置证书文件 格式wss://ip:port (支持域名配置)
# monitorAddr: "" # 默认自动获取, 节点的monitor地址 对外公开 监控服务 格式: ip:port
# apiUrl: "" # 默认自动获取, 节点的http地址 对外公开 http api 格式: http://ip:port
# wssConfig:
# certFile: "" # wss证书文件路径
# keyFile: "" # wss证书key文件路径
# certFile: "" # wss证书文件路径
# keyFile: "" # wss证书key文件路径
# ginMode: "release" # gin框架的模式 debug 调试 release 正式 test 测试
# logger:
# logger:
# level: 0 # 日志级别 0:未配置,将根据mode属性判断 1:debug 2:info 3:warn 4:error
# dir: "./logs" # 日志目录
# lineNum: false # 是否打印行号
# monitor:
# monitor:
# on: true # 是否开启监控
# addr: "0.0.0.0:5300" # 监控监听地址 默认为 0.0.0.0:5300
# demo:
# on: true # 是否开启demo
# addr: "0.0.0.0:5172" # demo监听地址 默认为 0.0.0.0:5172
# channel:
# cacheCount: 1000 # 频道缓存数量 频道被加载后会缓存到内存中,如果频道数量过多,会占用大量内存,可以通过此配置限制缓存数量
# createIfNoExist: true # 频道不存在时是否自动创建 默认为true
@ -54,10 +59,11 @@ external:
# syncOnce: 100 # 最近会话同步保存一次的数量 超过指定未保存的数量 将进行保存 默认为100
# userMaxCount: 1000 # 用户最近会话最大数量,超过此数量的最近会话后最旧的那条将被覆盖掉 默认为1000
# messageRetry: # 消息重试配置
# interval: 60s # 重试间隔 默认为60秒
# interval: 60s # 重试间隔 默认为60秒
# scanInterval: 5s # 每隔多久扫描一次超时队列,看超时队列里是否有需要重试的消息
# maxCount: 5 # 消息最大重试次数, 服务端持有用户的连接但是给此用户发送消息后在指定的间隔内没有收到ack将会重新发送直到超过maxCount配置的数量后将不再发送这种情况很少出现如果出现这种情况此消息只能去离线接口去拉取
# userMsgQueueMaxSize: 0 # 用户消息队列最大大小超过此大小此用户将被限速0为不限制
```

View File

@ -4,7 +4,7 @@
## 第一步:对接自己业务系统的用户
![集成用户流程](./userflow.png)
![集成用户流程](./integration.png)
1. 您的应用调用自己的登录或注册的业务接口。
2. 您的登录或注册的业务接口处理完自己的业务逻辑后将生成的用户 IDuid和 token调用悟空 IM 的[登录或注册用户](/api/user#注册用户)接口更新到悟空 IM

BIN
src/guide/integration.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 602 KiB

67
src/guide/practice.md Normal file
View File

@ -0,0 +1,67 @@
# 最佳实践
最佳实践为按照正式环境要求进行部署和配置。
## 部署
### 安装
```shell
curl -sSL https://gitee.com/WuKongDev/WuKongIMCli/raw/main/install.sh | sudo bash
```
### 运行
```shell
wk start
```
首次start会下载服务器文件下载完毕就好了。
### 配置
编辑 `~/wukongim/wk.yaml` 文件,内容如下
```yaml
mode: 'release' # 正式环境建议为release
tokenAuthOn: true # 长连接开启token认证
wsAddr: "" # ws 监听地址正式环境建议使用wss所以这里ws设置为空
wssAddr: "wss://0.0.0.0:5210" # wss 监听地址
wssConfig:
certFile: "/root/wukong/cert.crt" # wss证书文件绝对路径 (更换为自己的证书)
keyFile: "/root/wukong/key.key" # wss证书key文件绝对路径 (更换为自己的证书)
demo:
on: false # 关闭demo
external:
ip: 'xxx.xxx.xxxx.xxx' # 外网IP
```
### 端口
内网放行,外网屏蔽的端口:
```shell
5001 # http api端口保证您自己的业务服务能访问到
5300 # 监控管理端端口
```
外网放行端口
```shell
5100 # tcp长连接端口
5210 # wss长连接端口
```
### 重启
```shell
wk restart
```
# 未完待续

View File

@ -1,6 +1,6 @@
# 部署
## 一键部署(推荐)
## 第一种:一键部署(推荐)
```shell
curl -sSL https://gitee.com/WuKongDev/WuKongIMCli/raw/main/install.sh | sudo bash
@ -33,7 +33,7 @@ external:
ip: 'xxx.xxx.xxxx.xxx'
```
## Docker 部署
## 第二种:Docker 部署
```shell
docker run -d -p 5001:5001 -p 5100:5100 -p 5172:5172 -p 5200:5200 -p 5300:5300 -e WK_EXTERNAL_IP=xxx.xxx.xxx.xx --name wukongim -v ~/wukongim:/root/wukongim wukongim/wukongim:latest
@ -44,7 +44,7 @@ docker run -d -p 5001:5001 -p 5100:5100 -p 5172:5172 -p 5200:5200 -p 5300:5300 -
`WK_EXTERNAL_IP为服务器外网IP用于客户端连接如果仅测试客户端和服务器都在一个局域网内这里可以填部署服务器的局域网IP`
## Docker Compose 部署
## 第三种: Docker Compose 部署
```shell