部署Docker Compose单节点
集中部署Open WebUI + openGauss
- 拉取KunpengRAG仓库并进入到Open WebUI的Docker Compose部署目录。
git clone --branch v2.0.1 https://gitee.com/kunpeng_compute/KunpengRAG.git cd KunpengRAG/deployment/docker-compose/openwebui
- 无法访问外网的情况需要配置.env文件,禁用Open WebUI自动访问huggingface下载模型的功能。
OFFLINE_MODE=True
- 修改“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} - 配置.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} - 运行docker-compose命令一键安装并部署Open WebUI服务(包含openGauss服务)。
docker-compose up -d
该命令会在线从鲲鹏镜像仓库拉取服务对应的容器镜像文件,此过程需要较长时间。
- 上述命令运行完毕后,检查是否所有的容器已经部署启动。
docker ps
按照默认配置部署成功后,下列2个容器应处于正常运行状态。

- 通过浏览器输入URL地址http://${host_ip} :${port}访问Open WebUI服务。Open WebUI服务启动成功后,访问URL可返回Open WebUI可视化操作界面。
分离部署Open WebUI + openGauss
Open WebUI和openGauss分离部署的场景下,openGauss将单独部署在一个节点上,Open WebUI部署在另一台节点上并与openGauss连接。
若openGauss已部署,可跳过以下部署步骤。若未部署,则按以下步骤进行。
- 拉取KunpengRAG仓库并进入到Open WebUI的Docker Compose部署目录。
git clone --branch v2.0.1 https://gitee.com/kunpeng_compute/KunpengRAG.git cd KunpengRAG/deployment/docker-compose/openwebui
- 修改.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
- 通过Docker Compose指定单独安装并部署openGauss服务。
docker-compose up -d openGauss
部署Open WebUI服务
openGauss部署成功后,需要到另外一台节点部署Dify服务。
- 拉取KunpengRAG仓库并进入到Dify的Docker Compose部署目录。
git clone --branch v2.0.1 https://gitee.com/kunpeng_compute/KunpengRAG.git cd KunpengRAG/deployment/docker-compose/openwebui
- 修改.env文件,禁止Docker Compose自动启动openGauss服务。
COMPOSE_PROFILES=none
- 无法访问外网的情况需要配置.env文件,禁用Open WebUI自动访问huggingface下载模型等。
OFFLINE_MODE=True
- 修改.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} - 修改“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} - 运行docker-compose命令一键安装并部署Open WebUI服务(不包含openGauss服务)。
docker-compose up -d
该命令会在线从鲲鹏镜像仓库拉取服务对应的容器镜像文件,此过程需要较长时间。
- 上述命令运行完毕后,检查是否所有的容器已经部署启动。
docker ps -a
按照默认配置部署成功后,下列容器应处于正常运行状态。

- 通过浏览器输入URL地址http://${host_ip} :${port}访问Open WebUI服务。Open WebUI服务启动成功后,访问URL可返回Open WebUI可视化操作界面。
父主题: 方案五:搭建Open WebUI平台