Skip to content

在线安装 latest[v2.5.1]

部署提示:在开始“在线安装”之前,我们强烈建议您在技术部门同事的指导下进行安装部署。 由于安装过程可能涉及到复杂的配置和系统环境要求,专业指导可以帮助您避免潜在的技术问题,确保安装过程顺利进行。 如您在安装部署或使用过程中遇到任何问题,请添加下面微信获取 1V1 人工帮助。 Image description

1. 部署要求

1.1 在线安装之前,需要确保服务器上安装以下基础服务:

1.1.1 docker  >= 20.10.6
1.1.2 docker-compose  >=  1.25.4
1.1.3 操作系统优先推荐Ubuntu 22.04或以上, Debian 11或以上,次级推荐CentOS 7.9 64 位系统

1.2 需要申请兼容 open ai 调用方式的模型,获取相关秘钥、模型类型、请求地址等信息,例如阿里云的千问系列

1.3 单机部署资源建议:cpu >=8C,memory>=16G,可选:GPU>=8G

1.4 网络服务:建议允许外部网络访问

1.5 磁盘需求:安装磁盘大小建议120G以上

2. 下载所需文件

2.1 下载所需的 docker-compose.yaml 文件

bash
wget http://nbagent.ai/api/docs/docker-compose-v2.5.1.yaml
mv docker-compose-v2.5.1.yaml docker-compose.yaml

2.2 使用自己的ip或者域名

或者创建如下 docker-compose.yaml 文件, 将变量 {your_ip_or_host} 替换成实际的 ip 或者域名,例如,本机的 ip 地址为 10.10.4.10, 则将 {your_ip_or_host} 的地址全部替换成 10.10.4.10。例如 vim 批量替换命令:

:%s/{your_ip_or_host}/10.10.4.10/g

注意事项

额外注意的是:如果需要体验集成钉钉和企业微信第三方服务,则需要将服务部署在外网环境。如果需要进行视频处理,则建议将 video-chat 部署到有 GPU 的服务器上。

如遇下载异常或者其他情况,可以复制下列内容作为docker-compose.yaml文件:

yaml
version: '3'
services:
  chatbot-server:
    container_name: chatbot-server
    image: registry.cn-shenzhen.aliyuncs.com/nb-agent/chatbot-server:v2.5.1-community
    restart: always
    environment:
      - DATABASE_URI=mysql://root:yourchatbotpassword@{your_ip_or_host}/chatbot?maxsize=10  # mysql配置地址
      - AGENT_BASE_URL=http://{your_ip_or_host}:8000        # chatbot-agent的服务地址
      - AGENT_WS_PATH=ws://{your_ip_or_host}:8000/dev/eia/ws/chat    # chatbota-agent服务的ws访问地址
      - UPLOAD_FOLDER=/data/uploads            # 文件上传后的存储路径
      - ANT_AGENT_URL=http://{your_ip_or_host}:8081   # 蚂蚁金融财报研报服务暂时不对外开放
      - REDIS_URL=redis://:redis@{your_ip_or_host}   # redis服务的地址
      - FAISS_DB_PATH=/data/faiss_db          # 知识库向量存储路径
      - MOCK_SERVER=http://{your_ip_or_host}:5000       # mock服务地址,此处为chatbot-server服务
      - SECRET_KEY=8hW691DzKSHrEG222qYCv1m4rcHRQRbqr4KlaFkjZa0c1     # chatbot-server的jwt secret,pageplug集成需要
      - TIME_OUT=300
      - LOG_LEVEL=DEBUG
      - TEACH_DB=/data/teach_db      # 可教性存储路径
      - PAGEPLUG_SERVER=http://{your_ip_or_host}:30080     # pageplug服务地址
      - PAGEPLUG_CHATBOT_TOKEN_NAME=chatbot_token    # 访问pageplug token的key
      - CHATBOT_KEY=3kuuVcM0CUC1hpnq            # 第三方应用接入的key
      - ROBOT_HOST=http://{your_ip_or_host}:7777        # 集成第三方应用企业微信、钉钉机器人的服务,该服务只能部署到外网
      - CHATBOT_WEB_SERVER=http://{your_ip_or_host}:3000      # chatbot-web的服务地址
      - CHROMADB_PATH=/data/chromadb   # 训练数据存储目录
      - MAX_HISTORY=5  # 每次聊天时携带的最大上下文消息
    ports:
      - 5000:5000
    volumes:
      - /home/chatbot/chatbot-agent/files:/data/uploads     # 文件上传存储路径卷
      - /home/chatbot/chatbot-agent/faiss_db:/data/faiss_db    # 向量数据库卷
      - /home/chatbot/chatbot-agent/teach_db:/data/teach_db    # 可教性数据卷
      - /home/chatbot/chatbot-agent/chromadb:/data/chromadb    # 训练数据挂卷目录

  chatbot-agent:
    image: registry.cn-shenzhen.aliyuncs.com/nb-agent/agent:v2.5.1-community
    container_name: chatbot-agent
    restart: always
    ports:
      - 8000:8000
    environment:
      FLASH_RERANK_MODEL_NAME: "ms-marco-MiniLM-L-12-v2"  # 系统内置重排序模型,请勿删除
      REDIS_URL: "redis://:redis@{your_ip_or_host}"
      FILE_UPLOAD_ROOT: "/data/uploads"
      FAISS_DB_PATH: "/data/faiss_db"
      CHROMADB_PATH: "/data/chromadb"
      CHATBOT_SERVER: "http://{your_ip_or_host}:5000"
      LOG_LEVEL: "INFO"
      MAX_TOKEN: "18000"  # 模型的最大token数,建议配置为2/3
      TEACH_DB: "/data/teach_db"
      LLM_TIMEOUT: "600"
      VIDEO_CHAT_SERVER: "{your_ip_or_host}:8090"  # video-chat视频处理服务地址
      CHATBOT_KEY: "3kuuVcM0CUC1hpnq"   # 第三方访问chatbot-server的key
      CHATBOT_SERVER_OUT: "http://{your_ip_or_host}:5000"  # chatbot-server外部调用地址
      MINILM_L12V2_PATH: "/app/sentence-transformers/paraphrase-multilingual-MiniLM-L12-v2"
      EMBEDDING_BATCH_SIZE: "25"  # 当次请求向量模型携带的文本块数量。公有云模型的大部分都会限制调用api携带的文本块数量

    volumes:
      - /home/chatbot/chatbot-agent/files:/data/uploads   # 文件上传存储路径卷
      - /home/chatbot/chatbot-agent/faiss_db:/data/faiss_db   # 向量数据库卷
      - /home/chatbot/chatbot-agent/teach_db:/data/teach_db   # 可教性数据卷
      - /home/chatbot/chatbot-agent/chromadb:/data/chromadb   # 训练数据卷
      - /home/chatbot/chatbot-agent/nvidia:/usr/local/lib/python3.10/site-packages/nvidia   # 挂卷nvidia pip包

  video-chat:
    # 根据机器配置,选择gpu或这cpu版本的镜像
    # image: registry.cn-shenzhen.aliyuncs.com/nb-agent/video-chat:v1.0-cuda  # GPU版本的镜像
    image: registry.cn-shenzhen.aliyuncs.com/nb-agent/video-chat:v1.0-cpu   # CPU版本镜像
    container_name: video-chat
    ports:
      - 8090:8090
    restart: always
    environment:
      UPLOAD_FOLDER: "/data/uploads"   # 文件路径
      LOG_LEVEL: "develop"
      REDIS_URL: "redis://:redis@{your_ip_or_host}" # redis服务
      WHISPER_PATH: "/faster-whisper-large-v3"
      USE_GPU: "false"   # 是否使用GPU,true使用GPU,请使用gpu版本的镜像
      CHATBOT_KEY: "3kuuVcM0CUC1hpnq"   # 第三方访问chatbot-server的key
      CHATBOT_SERVER: "http://{your_ip_or_host}:5000"  # chatbot-server服务地址
      CPU_THREADS: "6"   # 当使用cpu时,配置cpu解析单个视频的cpu线程数
      NUM_WORKERS: "6"   # 当使用cpu时,配置并行处理视频的进程数量。推荐一个线程cpu使用一个worker
      SHARE_FILES: "true"   # 是否使用共享数据卷,如果在同一台机器上,则配置true,不再同一台机器上则使用false

    volumes:
      - /home/chatbot/chatbot-agent/files:/data/uploads
  robot-agent:
    # # 集成第三方应用企业微信、钉钉机器人的服务,该服务只能部署到外网, 部署在内网环境时,企业微信服务将无法使用
    image: registry.cn-shenzhen.aliyuncs.com/nb-agent/robot-agent:test.20241119165243
    container_name: robot-agent
    ports:
      - "7777:8080"
    restart: always
    environment:
      - SPRING_DATASOURCE_URL=jdbc:mysql://{your_ip_or_host}/robot_agent?serverTimezone=UTC  # mysql配置信息
      - SPRING_DATASOURCE_USERNAME=root
      - SPRING_DATASOURCE_PASSWORD=yourchatbotpassword
      - NEBULAAI_HTTP_URL=http://{your_ip_or_host}   # 访问chatbot-server服务配置
      - NEBULAAI_WS_URL=ws://{your_ip_or_host}   # 访问chatbot-server websocket相关服务配置
      - NEBULAAI_KEY=3kuuVcM0CUC1hpnq    # 访问chatbot-server服务的key
  chatbot-web:
    image: registry.cn-shenzhen.aliyuncs.com/nb-agent/chatbot-ui:v2.5.1
    container_name: chatbot-web
    ports:
      - 3000:3000
    restart: always
    environment:
      SERVER_URL: "http://{your_ip_or_host}:5000"  # chatbot-server的服务地址
      NEXT_PUBLIC_SERVER_URL: "http://{your_ip_or_host}:5000"  # mock服务地址,此处填写chatbot-server地址
      NEXT_PUBLIC_DOC_URL: "http://nbagent.ai/docs"   # 帮助文档地址
      NEXT_PUBLIC_APP_LOGO: "/api/get/image/YXBwLnBuZw=="
      NEXT_PUBLIC_PLUGIN_LOGO: "/api/get/image/cGx1Z2luLnBuZw=="
      ROBOT_AGENT_SERVER: "http://{your_ip_or_host}:7777"  # 集成第三方应用企业微信、钉钉机器人的服务,该服务只能部署到外网
      NEXT_PUBLIC_GPUSTACK_URL: ""

  pageplug:
    image: registry.cn-shenzhen.aliyuncs.com/nb-agent/pageplug-ee:chatbot_202412251048
    container_name: pageplug
    ports:
      - "30080:80"
      - "32017:27017"
    volumes:
      - /home/chatbot/stacks:/appsmith-stacks
    restart: unless-stopped
    environment:
      - PAGEPLUG_CHATBOT_OFFICIAL_WORKSPACE_ID=66ebbd1858fb1943e10a665e
      - PAGEPLUG_CHATBOT_DEPLOY=true
      - PAGEPLUG_CHATBOT_DEFAULT_USER_PASSWORD=chatbotpwd  # 使用chatbot-server账号访问pageplug页面时的初始密码
      - PAGEPLUG_CHATBOT_BASE64_ENCODED_SECRET_KEY=OGhXNjkxRHpLU0hyRUcyMjJxWUN2MW00cmNIUlFSYnFyNEtsYUZralphMGMx   # chatbot-server的jwt base64字符串
      - PAGEPLUG_LICENSE_KEY=rgC+4eVz2xqWkVGXFA7jVYWmisE8CfgAgJzqfd+0E3yj5cZz6k7NT5Ii3fcwFgKl9ZFLAVPyGtObSxia3H9ArMpZwoCSW5/knsnqVWtQZbH8+oZsXrKPx1vEOI4qG8oWXc7c0GKSErQKh7mfQvrUCmtV0N3iFRe/kivjghE7LtqPsonmHLlRFuk0JUb6R2VtmZyXb6EF830ROLYOISK8mkBK3oUz6UpHvdDpCQarf8lXKdEEs2UPjwlmjoufP0cwKgHPzTo0TDrfeP7riiWKirW0we7B8/1/a34VBWAgvS+/1n7GhLKwmCpX5eQr7uRtda5Tz5KJ9CF4IT7WiszwfQ==

  redis:
    image: registry.cn-shenzhen.aliyuncs.com/nb-agent/redis:6.2
    container_name: redis
    ports:
      - 6379:6379
    restart: always
    privileged: true
    volumes:
      - /home/chatbot/redis/data:/data
    command:  redis-server  --appendonly yes --requirepass redis

  mysql:
    image: registry.cn-shenzhen.aliyuncs.com/nb-agent/mysql:8.0.34-v2.5.1
    container_name: mysql
    ports:
      - 3306:3306
    restart: always
    volumes:
      - /home/chatbot/mysql:/var/lib/mysql
      - /home/chatbot/mysql_conf/my.cnf:/etc/mysql/conf.d/my.cnf
    environment:
      MYSQL_ROOT_PASSWORD: "yourchatbotpassword"
      MYSQL_INITDB_CHARSET: "utf8mb4"
      MYSQL_INITDB_COLLATE: "utf8mb4_unicode_ci"

3. 启动服务

启动服务前,请确保所有变量 {your_ip_or_host} 替换成实际的 ip 或者域名。

在 docker-compose.yaml 文件所在目录,使用以下命令启动所有服务

docker-compose up -d

4. 访问服务

4.1 打开浏览器:首先,请确保您的计算机已经连接到互联网。

4.2 输入地址:在浏览器的地址栏中输入以下格式的网址来访问服务:

http://{ip 地址或者域名}:{chatbot-web 的监听端口}

例如,如果您的服务器IP地址是10.10.0.4,并且服务监听在端口3000上,那么您应该输入:

http://10.10.0.4:3000

4.3 登录:在服务页面上,您将看到一个登录界面。请使用以下默认账号和密码进行登录:

账号:chatbot
密码:yourchatbotpassword

请确保在输入 IP 地址、域名和端口时保持准确无误。 如果遇到无法访问的情况,请检查网络连接,并确认服务器是否已经启动且监听在正确的端口上。 如果问题依旧,请尝试重启服务或联系技术支持获取帮助。


5. 配置模型和相关初始数据

服务启动后,对话功能、知识库等功能暂时是不可使用的,需要配置模型和nvidia安装包才可以使用。

5.1 挂卷pip nvidia安装包

运行一下命令,下载和安装nvidia包。

bash
docker exec chatbot-agent pip install -i https://mirrors.aliyun.com/pypi/simple \
nvidia-cublas-cu12==12.4.5.8 nvidia-cuda-cupti-cu12==12.4.127  \
nvidia-cuda-nvrtc-cu12==12.4.127 \
nvidia-cuda-runtime-cu12==12.4.127  nvidia-cudnn-cu12==9.1.0.70 nvidia-cufft-cu12==11.2.1.3 \
nvidia-curand-cu12==10.3.5.147 nvidia-cusolver-cu12==11.6.1.9 nvidia-cusparse-cu12==12.3.1.170 \
nvidia-nccl-cu12==2.21.5 nvidia-nvjitlink-cu12==12.4.127 nvidia-nvtx-cu12==12.4.127

由于该安装包较大,下载完之后进行挂卷。使用以下命令将容器的nvidia安装包copy到宿主机并进行挂卷。

bash
docker cp chatbot-agent:/usr/local/lib/python3.10/site-packages/nvidia  /home/chatbot/chatbot-agent/
vi docker-compose.yaml
# 检查挂卷信息是否正确,如果是下面信息,则无需修改直接重启chatbot-agent
volumes:
  - /home/chatbot/chatbot-agent/files:/data/uploads   # 文件上传存储路径卷
  - /home/chatbot/chatbot-agent/faiss_db:/data/faiss_db   # 向量数据库卷
  - /home/chatbot/chatbot-agent/teach_db:/data/teach_db   # 可教性数据卷
  - /home/chatbot/chatbot-agent/chromadb:/data/chromadb   # 训练数据卷
  - /home/chatbot/chatbot-agent/nvidia:/usr/local/lib/python3.10/site-packages/nvidia   # 挂卷nvidia pip包

重启chatbot-agent服务.docker-compose up -d chatbot-agent

5.2 配置语言模型和向量模型等

登录后,在模型管理页面,点击模型接入,例如选择大语言模型,接口类型选择Generic OpenAI,其中api访问地址以及API-key,不同平台的地址均不一样。更为详细的配置,请参考

【模型管理】 章节。

img

下面以线上阿里云百炼官网、Deepseek官网以及Ollama本地部署的模型进行配置讲解:

  • 阿里云百炼官网:https://bailian.console.aliyun.com/?spm=5176.29619931.J__Z58Z6CX7MY__Ll8p1ZOR.1.ad2a521cA8LYfi#/model-market

    img

    右上角是申请的API-key。点击进入创建自己的apikey, 选择任何一个模型,点击api调用示例:

    img

    如下图所示:找到模型名称,以及openai的调用示例中复制其调用地址。全部复制,包括域名和/v1. 将模型名称、apikey和调用地址填入即可。

    img

  • Deepseek配置。访问官方文档:https://api-docs.deepseek.com/zh-cn/

    依次点击快速开始-->首次调用API,如下图所示:申请apikey、查看openai的调用地址以及模型名称。

    img

  • ollama的配置。

    模型名称:可通过ollama list命令查看,docker部署的可以通过 sudo docker exec ollama ollama list 如下图所示:

    img

    • 大语言模型:

      img

      api key如果没有配置则填写任意值。

      调用地址:填写http://ollmahost:port/v1, 例如ollama所在的ip为10.10.10.6,端口为11434,则调用地址填写:http://10.10.10.6:11434/v1

    • Embedding (向量)模型:

      img

      api key如果没有配置则填写任意值。

      调用地址:填写http://ollmahost:port, 例如ollama所在的ip为10.10.10.6,端口为11434,则调用地址填写:http://10.10.10.6:11434. 注意大语言模型需要带上/v1,但是Embedding 模型不要带

配置已完成后就可能正常使用了。

6. 服务配置详解

已正常配置语言模型和向量模型后,则可正常使用系统的绝大部分功能。如果不想深入了解系统的其它配置项,该部分功能无需了解。如需深入了解各个服务的配置项,请阅读下面各个服务的配置说明:

6.1 chatbot-server 服务各个环境变量解释.

其中 chatbot-server 服务和 chatbot-agent 服务共用数据卷。

yaml
DATABASE_URI: mysql 配置地址
AGENT_BASE_URL: chatbot-agent 的服务地址
AGENT_WS_PATH: chatbota-agent 服务的 ws 访问地址
UPLOAD_FOLDER: 文件上传后的存储路径,需要与数据卷的配置一致
REDIS_URL: redis 服务的地址
FAISS_DB_PATH: 知识库向量存储路径
MOCK_SERVE: mock 服务地址,此处为 chatbot-server 服务
SECRET_KEY: chatbot-server 的 jwt secret,pageplug 集成需要
TIME_OUT: 300
LOG_LEVEL: 日志级别
TEACH_DB: 可教性存储路径
PAGEPLUG_SERVER: pageplug 服务地址
PAGEPLUG_CHATBOT_TOKEN_NAME: 访问 pageplug token 的 key
CHATBOT_KEY: 第三方应用接入的  key,例如 robotagnt、video-chat 接入需要
ROBOT_HOST:  集成第三方应用企业微信、钉钉机器人的服务
CHATBOT_WEB_SERVER:     chatbot-web的服务地址
CHROMADB_PATH:  训练数据存储目录
MAX_HISTORY=5  每次聊天时携带的最大上下文消息

数据卷配置需要与chatbot-agent的配置一致

yaml
- /home/chatbot/chatbot-agent/files:/data/uploads     # 文件上传存储路径卷
- /home/chatbot/chatbot-agent/faiss_db:/data/faiss_db    # 向量数据库卷
- /home/chatbot/chatbot-agent/teach_db:/data/teach_db    # 可教性数据卷
- /home/chatbot/chatbot-agent/chromadb:/data/chromadb    # 训练数据挂卷目录

6.2 chatbot-agent 服务各个环境变量解释。

全部环境变量配置以及解释如下:

yaml
FLASH_RERANK_MODEL_NAME: "ms-marco-MiniLM-L-12-v2"  # 系统内置重排序模型,请勿删除
REDIS_URL: "redis://:redis@{your_ip_or_host}"  # redis配置
FILE_UPLOAD_ROOT: "/data/uploads"   #文件上传路径
FAISS_DB_PATH: "/data/faiss_db"  # 向量数据库路径
CHROMADB_PATH: "/data/chromadb"   # 训练数据路径
CHATBOT_SERVER: "http://{your_ip_or_host}:5000"   # chatbot-server服务地址
LOG_LEVEL: "INFO"   # 日志级别
MAX_TOKEN: "18000"  # 模型的最大token数,建议配置为2/3
TEACH_DB: "/data/teach_db"   # 可教性存储路径
LLM_TIMEOUT: "600"  # 模型超时时间
VIDEO_CHAT_SERVER: "{your_ip_or_host}:8090"  # video-chat视频处理服务地址
CHATBOT_KEY: "3kuuVcM0CUC1hpnq"   # 第三方访问chatbot-server的key
CHATBOT_SERVER_OUT: "http://{your_ip_or_host}:5000"  # chatbot-server外部调用地址
EMBEDDING_BATCH_SIZE: "25"  # 当次请求向量模型携带的文本块数量。公有云模型的大部分都会限制调用api携带的文本块数量

数据卷配置:

yaml
- /var/lib/chatbot/chatbot-agent/files:/data/uploads   # 文件上传存储路径卷
- /var/lib/chatbot/chatbot-agent/faiss_db:/data/faiss_db   # 向量数据库卷
- /var/lib/chatbot/chatbot-agent/teach_db:/data/teach_db   # 可教性数据卷
- /var/lib/chatbot/chatbot-agent/chromadb:/data/chromadb   # 训练数据卷用来微调agent
- /home/chatbot/chatbot-agent/nvidia:/usr/local/lib/python3.10/site-packages/nvidia   # 挂卷nvidia pip包

6.3 video-chat 服务说明

video-chat 服务是一款视频处理成文本服务,支持使用 cpu 和 GPU 两种方式进行处理。

当使用 cpu 方式处理视频时,则使用镜像:registry.cn-shenzhen.aliyuncs.com/nb-agent/video-chat:v1.0-cpu,当服务器支持 GPU 处理时,则使用镜像:registry.cn-shenzhen.aliyuncs.com/nb-agent/video-chat:v1.0-cuda. 显卡要求为英伟达显卡,并且 GPU 内存>=8G

yaml
UPLOAD_FOLDER: "/data/uploads"   # 文件路径
LOG_LEVEL: "develop"
REDIS_URL: "redis://:redis@{your_ip_or_host}" # redis 服务
WHISPER_PATH: "/faster-whisper-large-v3"
USE_GPU: "false"   # 是否使用 GPU,true 使用 GPU,请使用 gpu 版本的镜像
CHATBOT_KEY: "3kuuVcM0CUC1hpnq"   # 第三方访问 chatbot-server 的 key
CHATBOT_SERVER: "http://{your_ip_or_host}:5000"  # chatbot-server 服务地址
CPU_THREADS: "6"   # 当使用 cpu 时,配置 cpu 解析单个视频的 cpu 线程数
NUM_WORKERS: "6"   # 当使用 cpu 时,配置并行处理视频的进程数量。推荐一个线程 cpu 使用一个 worker
SHARE_FILES: "true"   # 是否使用共享数据卷,如果在同一台机器上,则配置 true,不再同一台机器上则

挂卷信息说明:

SHARE_FILES: "true" 时,表示使用共享卷,与 chatbot-agentchatbot-server 服务共享。当该服务部署在其他机器上【与 chatbot-agentchatbot-server 不再同一台机器】时,则参数 SHARE_FILES: "false" 。共享卷配置如下:

yaml
volumes:
  - /home/chatbot/chatbot-agent/files:/data/uploads

6.4 robot-agent 服务

robot-agent 服务是集成企业微信、钉钉机器人与 chatbot-server 相关 API 的服务,通过该服务,就可以将应用发布到企业微信和钉钉上。通过与企业微信机器人或者钉钉机器人对话,就能实现与 NebulaAI 应用上的所有功能。要体验该功能,必须将该服务发布到外部网络环境,且能正常访问 chatbot-server、msyql 等其他服务。

yaml
- SPRING_DATASOURCE_URL: # mysql 配置信息
- SPRING_DATASOURCE_USERNAME=root  # mysql
- SPRING_DATASOURCE_PASSWORD=yourchatbotpassword  # mysql 密码
- NEBULAAI_HTTP_URL=http://{your_ip_or_host}   # 访问 chatbot-server 服务配置
- NEBULAAI_WS_URL=ws://{your_ip_or_host}   # 访问 chatbot-server websocket 相关服务配置
- NEBULAAI_KEY=3kuuVcM0CUC1hpnq    # 访问 chatbot-server 服务的 key

6.5 chatbot-web 服务各个环境变量解释

环境变量如下所示:

yaml
SERVER_URL: "http://{your_ip_or_host}:5000"  # chatbot-server 的服务地址
NEXT_PUBLIC_SERVER_URL: "http://{your_ip_or_host}:5000"  # mock服务地址,此处填写chatbot-server地址
NEXT_PUBLIC_DOC_URL: "http://nbagent.ai/docs"   # 帮助文档地址
NEXT_PUBLIC_APP_LOGO: "/api/get/image/YXBwLnBuZw=="
NEXT_PUBLIC_PLUGIN_LOGO: "/api/get/image/cGx1Z2luLnBuZw=="
ROBOT_AGENT_SERVER: "http://{your_ip_or_host}:7777"  # 集成第三方应用企业微信、钉钉机器人的服务,该服务只能部署到外网

6.6 Pageplug

Pageplug 是一款低代码平台。他极大的增强了 NebulaAI 的多模态应用。通过 Pageplug 仅需简单配置,就可以实现几十种图表渲染,例如列表、表格、饼图、柱状图、折线图、水波图、轮播图等等。

以下是 pageplug 的各个环境变量说明:

yaml
- PAGEPLUG_CHATBOT_OFFICIAL_WORKSPACE_ID=66ebbd1858fb1943e10a665e  # 官方卡片 id
- PAGEPLUG_CHATBOT_DEPLOY=true
- PAGEPLUG_CHATBOT_DEFAULT_USER_PASSWORD=chatbotpwd  # 使用 chatbot-server 账号访问 Pageplug 页面时的初始密码
- PAGEPLUG_CHATBOT_BASE64_ENCODED_SECRET_KEY:xxxxx   # chatbot-server的 jwt base64 字符串
- PAGEPLUG_LICENSE_KEY: # pageplug license

6.7 Redis

redis服务配置相关存储卷以及访问秘钥信息,具体信息如下:

yaml
  redis:
    image: registry.cn-shenzhen.aliyuncs.com/nb-agent/redis:6.2
    container_name: redis
    ports:
      - 6379:6379
    restart: always
    privileged: true
    volumes:
      - /home/chatbot/redis/data:/data
    command:  redis-server  --appendonly yes --requirepass redis

6.8 Mysql

Mysql服务配置相关存储卷以及访问秘钥信息,如需挂载mysql的配置文件,需要先创建mysql配置文件信息,具体操作步骤如下:

bash
mkdir -p /home/chatbot/mysql_conf
cd /home/chatbot/mysql_conf 
touch mysql.cnf  # 内容如下:
[mysqld]
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci

[client]
default-character-set = utf8mb4

[mysql]
default-character-set = utf8mb4

chmod 644 mysql.cnf

具体配置信息如下:

yaml
  mysql:
    image: registry.cn-shenzhen.aliyuncs.com/nb-agent/mysql:8.0.34-v2.4.2
    container_name: mysql
    ports:
      - 3306:3306
    restart: always
    volumes:
      - /home/chatbot/mysql:/var/lib/mysql
      - /home/chatbot/mysql_conf/mysql.cnf:/etc/mysql/conf.d/mysql.cnf
    environment:
      MYSQL_ROOT_PASSWORD: "yourchatbotpassword"
      MYSQL_INITDB_CHARSET: "utf8mb4"
      MYSQL_INITDB_COLLATE: "utf8mb4_unicode_ci"

卸载和清理

卸载和清理主要分为三个步骤: 1.停止服务; 2.清理挂卷信息; 3.删除 docker 镜像;

  • 停止服务:执行命令docker-compose down
  • 清理挂卷信息:执行命令 rm -rf /home/chatbot. 如果该路径发生变更,则清理变更后的挂卷路径
  • 清理镜像:清理镜像前,确保本台机器没有其他额外的镜像,则使用docker image prune -a -f 进行清理。 如果有其他镜像,则需要执行docker rmi {chatbot-image}进行删除。 chatbot-image 指 docker-compose.yaml 中的相关镜像。