鲲鹏社区首页
中文
注册
开发者
我要评分
获取效率
正确性
完整性
易理解
在线提单
论坛求助

部署Docker Compose单节点

集中部署Open WebUI + openGauss

  1. 拉取KunpengRAG仓库并进入到Open WebUI的Docker Compose部署目录。
    git clone --branch v2.0.1 https://gitee.com/kunpeng_compute/KunpengRAG.git
    cd KunpengRAG/deployment/docker-compose/openwebui
  2. 无法访问外网的情况需要配置.env文件,禁用Open WebUI自动访问huggingface下载模型的功能。
    OFFLINE_MODE=True
  3. 修改“KunpengRAG/deployment/docker-compose/openwebui/docker-compose.yaml”文件中open-webui组件environment中的“OPENGAUSS_DB_URL”参数为集中式部署openGauss数据库链接串“${CENTRALIZED_OPENGAUSS_DB_URL}”。部署文件中默认为集中式数据库连接串,若未修改过部署文件,此步骤无需修改。
    services:
      open-webui:
        container_name: openwebui
        env_file: .env
        image: swr.cn-north-4.myhuaweicloud.com/kunpeng-ai/openwebui:0.6.36
        environment:
          # OpenGauss 数据库连接 URL
          - OPENGAUSS_DB_URL=${CENTRALIZED_OPENGAUSS_DB_URL}
          - OFFLINE_MODE=${OFFLINE_MODE}
          - VECTOR_DB=${VECTOR_DB}
          - PORT=${WEBUI_PORT}
  4. 配置.env文件中参数(不配置则按默认值)。
    # The port number exposed by the openwebui service
    WEBUI_PORT=8123
    # Enable all below if you are using vector database: openGauss
    VECTOR_DB=opengauss
    COMPOSE_PROFILES=${VECTOR_DB}
    OPENGAUSS_USERNAME=opengauss_user
    OPENGAUSS_PASSWORD=Openwebui$123
    OPENGAUSS_HOST=openwebui-opengauss
    # The port number for accessing the openGauss database from outside the container
    HOST_OPENGAUSS_PORT=8888
    # The port number for accessing the openGauss database from inside the container
    OPENGAUSS_PORT=5432
    OPENGAUSS_DATABASE=openwebui
    # Centralized deployment mode
    CENTRALIZED_OPENGAUSS_DB_URL=opengauss://${OPENGAUSS_USERNAME}:${OPENGAUSS_PASSWORD}@${OPENGAUSS_HOST}:${OPENGAUSS_PORT}/${OPENGAUSS_DATABASE}
    # Decentralized deployment mode
    OTHER_OPENGAUSS_DB_URL=opengauss://${OPENGAUSS_USERNAME}:${OPENGAUSS_PASSWORD}@${OPENGAUSS_HOST}:${HOST_OPENGAUSS_PORT}/${OPENGAUSS_DATABASE}
  5. 运行docker-compose命令一键安装并部署Open WebUI服务(包含openGauss服务)。
    docker-compose up -d

    该命令会在线从鲲鹏镜像仓库拉取服务对应的容器镜像文件,此过程需要较长时间。

  6. 上述命令运行完毕后,检查是否所有的容器已经部署启动。
    docker ps

    按照默认配置部署成功后,下列2个容器应处于正常运行状态。

  7. 通过浏览器输入URL地址http://${host_ip} :${port}访问Open WebUI服务。Open WebUI服务启动成功后,访问URL可返回Open WebUI可视化操作界面。

分离部署Open WebUI + openGauss

Open WebUI和openGauss分离部署的场景下,openGauss将单独部署在一个节点上,Open WebUI部署在另一台节点上并与openGauss连接。

若openGauss已部署,可跳过以下部署步骤。若未部署,则按以下步骤进行。

  1. 拉取KunpengRAG仓库并进入到Open WebUI的Docker Compose部署目录。
    git clone --branch v2.0.1 https://gitee.com/kunpeng_compute/KunpengRAG.git
    cd KunpengRAG/deployment/docker-compose/openwebui
  2. 修改.env文件中的openGauss环境变量,设置openGauss端口、用户名、密码以及数据库名称等信息(不配置则按如下默认值设置)。
    OPENGAUSS_PASSWORD=Openwebui$123
    OPENGAUSS_HOST=openwebui-opengauss
    # The port number for accessing the openGauss database from outside the container
    HOST_OPENGAUSS_PORT=8888
    # The port number for accessing the openGauss database from inside the container
    OPENGAUSS_PORT=5432
    OPENGAUSS_DATABASE=openwebui
  3. 通过Docker Compose指定单独安装并部署openGauss服务。
    docker-compose up -d openGauss

部署Open WebUI服务

openGauss部署成功后,需要到另外一台节点部署Dify服务。

  1. 拉取KunpengRAG仓库并进入到Dify的Docker Compose部署目录。
    git clone --branch v2.0.1 https://gitee.com/kunpeng_compute/KunpengRAG.git
    cd KunpengRAG/deployment/docker-compose/openwebui
  2. 修改.env文件,禁止Docker Compose自动启动openGauss服务。
    COMPOSE_PROFILES=none
  3. 无法访问外网的情况需要配置.env文件,禁用Open WebUI自动访问huggingface下载模型等。
    OFFLINE_MODE=True
  4. 修改.env中的openGauss环境变量为单独部署的openGauss连接信息,默认值如下。
    # The port number exposed by the openwebui service
    WEBUI_PORT=8123
    # Enable all below if you are using vector database: openGauss
    VECTOR_DB=opengauss
    OPENGAUSS_USERNAME=opengauss_user
    OPENGAUSS_PASSWORD=Openwebui$123
    OPENGAUSS_HOST=openwebui-opengauss
    # The port number for accessing the openGauss database from outside the container
    HOST_OPENGAUSS_PORT=8888
    # The port number for accessing the openGauss database from inside the container
    OPENGAUSS_PORT=5432
    OPENGAUSS_DATABASE=openwebui
    # Centralized deployment mode
    CENTRALIZED_OPENGAUSS_DB_URL=opengauss://${OPENGAUSS_USERNAME}:${OPENGAUSS_PASSWORD}@${OPENGAUSS_HOST}:${OPENGAUSS_PORT}/${OPENGAUSS_DATABASE}
    # Decentralized deployment mode
    OTHER_OPENGAUSS_DB_URL=opengauss://${OPENGAUSS_USERNAME}:${OPENGAUSS_PASSWORD}@${OPENGAUSS_HOST}:${HOST_OPENGAUSS_PORT}/${OPENGAUSS_DATABASE}
  5. 修改“KunpengRAG/deployment/docker-compose/openwebui/docker-compose.yaml”文件中open-webui组件environment中的“OPENGAUSS_DB_URL”参数值为分离式部署openGauss数据库链接串“${OTHER_OPENGAUSS_DB_URL}”
    services:
      open-webui:
        container_name: openwebui
        env_file: .env
        image: swr.cn-north-4.myhuaweicloud.com/kunpeng-ai/openwebui:0.6.36
        environment:
          # OpenGauss 数据库连接 URL
          - OPENGAUSS_DB_URL=${OTHER_OPENGAUSS_DB_URL}
          - OFFLINE_MODE=${OFFLINE_MODE}
          - VECTOR_DB=${VECTOR_DB}
          - PORT=${WEBUI_PORT}
  6. 运行docker-compose命令一键安装并部署Open WebUI服务(不包含openGauss服务)。
    docker-compose up -d

    该命令会在线从鲲鹏镜像仓库拉取服务对应的容器镜像文件,此过程需要较长时间。

  7. 上述命令运行完毕后,检查是否所有的容器已经部署启动。
    docker ps -a

    按照默认配置部署成功后,下列容器应处于正常运行状态。

  8. 通过浏览器输入URL地址http://${host_ip} :${port}访问Open WebUI服务。Open WebUI服务启动成功后,访问URL可返回Open WebUI可视化操作界面。