Files
schoolNews/doc/部署.md
2025-11-28 15:49:32 +08:00

4.9 KiB
Raw Permalink Blame History

校园新闻系统部署

加载镜像

镜像目录结构

---docker 根目录 |---dify # dify的docker目录 |---dify 官方内容 |---schoolNews # schoolNews的docker目录 |---dify # dify工作流的2个yml |---config # 前后端配置文件 |---init-db # 数据库标记 |---mysql # mysql配置 |---redis # redis配置 |---nginx # nginx配置 |---volumes # 数据卷 |---images # 镜像 |---docker-compose.yml # docker-compose配置 |---init-volumes.sh # 初始化数据卷

后端服务镜像

镜像来源由星洋智慧提供 超级管理员账号密码superadmin 123456

镜像加载

# 递归查找指定目录下的所有镜像文件并加载   schoolNews修改镜像增加标签latest用于docker compose启动

find .docker/schoolNews/images -type f \( -name "*.tar" -o -name "*.tar.gz" -o -name "*.tgz" \) -exec sh -c '
    docker load -i "$1"
    # 获取刚导入的镜像名称和标签
    IMAGE_INFO=$(docker images --format "{{.Repository}}:{{.Tag}}" | tail -n1)
    if [ -n "$IMAGE_INFO" ]; then
        # 分离仓库名和标签
        REPO=$(echo "$IMAGE_INFO" | cut -d: -f1)
        TAG=$(echo "$IMAGE_INFO" | cut -d: -f2)
        # 只有当标签不是 latest 时才添加新标签
        if [ "$TAG" != "latest" ]; then
            docker tag "$IMAGE_INFO" "$REPO:latest"
            echo "Tagged $IMAGE_INFO as $REPO:latest"
        fi
    fi
' sh {} \;

# 单独镜像加标签
docker tag school-news-xxx:yyyyMMdd_HHmmss school-news-xxx:latest

服务启动

cd docker/schoolNews
docker-compose up -d

服务停止

cd docker/schoolNews
docker-compose down

服务重启

cd docker/schoolNews
docker-compose restart

dify镜像启动

会进行镜像拉取

cd docker/dify
docker-compose up -d
sudo chown -R 1001:1001 ./volumes/app/storage # 新版dify用非root用户启动需要修改docker卷的权限

配置dify工作流

dify登录url 本地ip:8000

1. 注册账号

alt text

2. 导入工作流

工作流的yaml文件在dify目录下 alt text 安装工作流所需插件。

插件说明:

  1. 安思派:工作流联网搜索插件
  2. 硅基流动: LLM插件。应该替换成本地部署的模型内容

alt text

APIKEY授权 alt text

3. 创建一个测试知识库开启apikey

APIKEY作用 给后端服务提供访问dify知识库内容的key权限

alt text

alt text

alt text

保存好知识库的apikey通常以dataset开头。所有知识库共用。

4.动态知识库检索工作流

测试

如图即正常 alt text alt text

发布

要同时发布为工具,供工作流使用 alt text

5. 修改思政小帮手工作流

删除“动态知识库检索”节点,重新添加

alt text alt text

修改节点输入、输出相关节点的引用

修改的输入参数有3个第1个是对话变量的datasets。表示该词对话中使用了那些知识库。 第2个是工作流输入的query。表示用户输入的对话内容。 第3个是对话变量的dataset_apikey。表示知识库的apikey alt text

alt text alt text alt text

修改知识库处理节点的引用

直接引用“动态知识库检索”的输出内容text即可 alt text

测试发布

正常对话即正确 alt text

获取工作流apikey

该apikey用于前端进行对话指定使用该工作流 alt text

6. 配置后端dify配置

-- 更新dify.apiBaseUrl
UPDATE `school_news`.`tb_sys_config` SET `config_value` = '实际ip:8000' WHERE `config_key` = 'dify.apiBaseUrl';

-- 更新dify.apiKey
UPDATE `school_news`.`tb_sys_config` SET `config_value` = '工作流的apikey' WHERE `config_key` = 'dify.apiKey';

-- 更新dify.dify.knowledgeApiKey
UPDATE `school_news`.`tb_sys_config` SET `config_value` = '知识库的apikey' WHERE `config_key` = 'dify.dify.knowledgeApiKey';

-- 更新智能体配置的api_key。该api_key的编辑权限前端未开放
UPDATE `school_news`.`tb_ai_agent_config` SET `dify_api_key`='工作流的apikey' WHERE `id` = 'agent_default_001';


7. 重启后端服务

即可进行对话 alt text

系统配置

消息模块配置

短信

申请阿里云的短信服务,配置到后端 alt text

邮箱

开启邮箱服务 alt text