📖文章内容

在这里插入图片描述

前言

Dify 是一款开源的大语言模型应用开发平台,能够帮助开发者快速构建智能体和工作流等AI应用。

本教程将系统讲解从基础配置到实战部署的全流程,重点介绍服务管理、跨环境访问和大模型对接等核心操作。内容涵盖本地环境、虚拟机及云服务器三种部署方案,并详细解析 Ollama 本地大模型的对接方法,特别适合初学者快速入门。

一、基础补充:Dify服务启停与网络原理

1.1 Dify服务开启与关闭(核心操作)

服务器与个人电脑的核心区别在于 7×24×365 稳定运行,若Dify服务未启动,将无法通过浏览器访问。以下分本地(Win/Mac)和虚拟机两种场景,详细说明启停步骤:

场景1:Win/Mac本地环境(Docker Desktop)
启动流程:
  1. 启动Docker:双击桌面「Docker Desktop」图标,等待后台运行(任务栏显示Docker图标即就绪);
  2. 进入Dify Docker目录:打开文件管理器,导航至本地Dify安装目录(示例路径:D:\DockerProject\dify-1.9.2\dify-1.9.2\docker);
  3. 打开命令行:在该目录空白处按住「Shift+右键」,选择「在此处打开命令窗口」或「Windows终端」;
  4. 启动Dify服务:
    • 推荐命令(前台运行,可查看日志):docker compose up
      ✅ 优势:实时显示启动日志,报错可快速排查;启动成功后直接访问浏览器即可(无需重复下载文件);
      ❌ 注意:若长时间无日志输出,可能启动失败,按 Ctrl+C 停止后重新执行命令;
    • 备选命令(后台运行,无日志):docker compose up -d
      ⚠️ 不建议新手使用:无日志输出,报错难以定位。
停止流程:
  1. 若为前台运行(有日志窗口):直接按 Ctrl+C 停止服务;
  2. 若为后台运行(无日志窗口):进入上述Docker目录,执行命令 docker compose down
  3. 可选操作:关闭Docker Desktop,或直接关机(不影响下次启动配置)。
场景2:虚拟机环境(模拟服务器)

虚拟机部署可还原服务器运行逻辑,启停步骤与Linux服务器一致:

启动流程:
  1. 启动虚拟机:打开VMware等虚拟机软件,启动Linux系统(如CentOS、Ubuntu);
  2. 远程连接:使用FinalShell、Xshell等工具,通过虚拟机IP、用户名(默认root)、密码连接;
  3. 启动Docker服务:
    • 执行命令 systemctl start docker(启动Docker);
    • 验证状态:systemctl status docker,显示「running」即为就绪;
  4. 启动Dify服务:
    • 进入Dify Docker目录(示例路径:cd /root/dify-1.9.2/docker/);
    • 执行命令 docker compose up(前台运行,推荐新手)。
停止流程:
  1. 停止Dify服务:
    • 后台运行场景:进入Docker目录,执行 docker compose down
    • 前台运行场景:按 Ctrl+C 停止;
  2. 可选操作:停止Docker服务(systemctl stop docker),或直接关机(shutdown now)。

1.2 本地服务与远程服务核心原理

1. 为什么虚拟机的Dify,Win浏览器能访问?

核心逻辑:同一局域网内的IP互通。虚拟机相当于局域网内的一台「独立电脑」,启动Dify后会占用虚拟机的80端口(默认),Win电脑通过虚拟机的局域网IP(如192.168.23.145)即可访问该服务。

2. 访问成功的前提条件:
  • 虚拟机已启动Dify服务(docker compose up 运行中);
  • 虚拟机未关机(仅挂起时,会保留服务运行状态);
  • 局域网网络通畅(未开启防火墙拦截80端口)。
3. 如何验证Dify服务是否运行?

若使用 docker compose up -d 后台启动,无法通过日志判断状态,可执行以下命令(需在Dify Docker目录下):

docker compose ps

✅ 若输出包含多个运行中的容器(如web、db、redis等),说明服务正常;❌ 无输出或状态为「exited」,说明服务未启动。

4. 本地服务 vs 远程服务(公网服务)
服务类型 访问范围 典型场景 部署载体
本地服务(Win/Mac) 本机 + 同一路由器下设备 个人开发测试 个人电脑
虚拟机服务 本机 + 局域网内设备 团队内部测试 本地虚拟机
远程服务(公网) 所有互联网用户 线上产品部署 云服务器(阿里云/腾讯云等)

⚠️ 关键区别:是否具备「公网IP」。本地/虚拟机仅能内网访问,云服务器因分配公网IP,可实现全球访问(需开放对应端口)。

5. 域名访问原理(拓展)
  • 我们访问 https://www.coze.cn 本质是通过DNS解析,将域名转换为目标服务器IP(如xxx.xxx.xxx.xxx:80);
  • 本地Dify默认通过IP访问(如http://127.0.0.1),若想通过自定义域名(如www.dify.com)访问,可修改本地Hosts文件:
    1. 打开路径:C:\Windows\System32\drivers\etc\hosts(Win系统);
    2. 右键用「管理员模式」打开,添加一行:127.0.0.1 www.dify.com
    3. 保存后,浏览器输入 http://www.dify.com 即可访问本地Dify(无需部署DNS服务器)。

二、云服务器部署Dify(公网可访问)

云服务器部署是Dify线上可用的核心方案,操作流程与虚拟机完全一致,仅需额外完成「购买服务器」和「公网访问配置」,以下以阿里云为例(腾讯云/华为云操作类似)。

2.1 前期准备

  1. 购买云服务器:

    • 访问阿里云ECS控制台:https://ecs.console.aliyun.com
    • 选择配置:推荐「4核8G内存20G硬盘」(满足Dify运行最低要求);
    • 付费方式:新手推荐「按量付费」(按小时计费,适合测试),需保证账户余额≥100元;
    • 记录信息:购买后获取「公网IP」「用户名(默认root)」「登录密码」。
  2. 远程连接服务器:

    • 使用FinalShell工具,输入公网IP、root用户名、密码,建立连接(连接成功后进入Linux命令行)。

2.2 部署步骤(与虚拟机完全一致)

步骤1:配置Docker仓库(国内加速)
sudo dnf config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
步骤2:安装Docker与Docker Compose
sudo dnf install docker-ce docker-ce-cli containerd.io docker-compose-plugin -y

✅ 验证安装:docker --version 显示版本号(如Docker version 29.0.0)即为成功。

步骤3:启动Docker并配置镜像加速
  1. 启动Docker服务:
    systemctl start docker  # 启动Docker
    systemctl enable docker # 设置开机自启
    
  2. 配置国内镜像源(解决下载慢问题):
    • 编辑Docker配置文件:vi /etc/docker/daemon.json
    • i 进入编辑模式,粘贴以下内容:
      {
        "registry-mirrors": [
          "https://docker.registry.cyou",
          "https://mirror.aliyuncs.com",
          "https://dockerproxy.com",
          "https://mirror.baidubce.com"
        ],
        "insecure-registries": ["registry.docker-cn.com", "docker.mirrors.ustc.edu.cn"],
        "debug": true,
        "experimental": false
      }
      
    • Esc,输入 :wq 保存退出;
    • 重启Docker使配置生效:
      systemctl daemon-reload
      systemctl restart docker
      
步骤4:上传并解压Dify安装包
  1. 安装上传工具:yum install lrzsz unzip -y
  2. 上传Dify压缩包:在命令行输入 rz,选择本地的 dify-1.9.2.zip 文件上传;
  3. 解压文件:
    unzip dify-1.9.2.zip  # 解压到当前目录
    cd /root/dify-1.9.2/docker/  # 进入Docker目录
    
步骤5:配置并启动Dify
  1. 复制环境变量文件:
    cp .env.example .env
    
  2. 启动Dify服务(首次启动需下载镜像,耗时较长,耐心等待):
    docker compose up
    
  3. 验证访问:浏览器输入 http://公网IP(如http://47.100.71.207),出现Dify登录界面即为部署成功。

2.3 可选:域名绑定(进阶)

若已备案域名,可将域名解析到云服务器公网IP,实现 http://www.xxx.com 访问Dify(需在云服务器控制台开放80端口)。

三、Ollama安装与本地大模型部署

Dify本身不自带大模型,需对接第三方LLM(如Deepseek、通义千问)。Ollama是一款轻量型大模型部署工具,支持一键部署开源大模型,完美适配Dify。

3.1 核心概念

  • Ollama:开源大模型管理工具,支持Windows/Linux/Mac多平台,可一键下载、运行、切换大模型;
  • 支持模型:Deepseek、Qwen2(通义千问)、Llama 3等热门开源模型;
  • 核心优势:操作简单、资源占用低、支持本地运行(保护隐私)。

3.2 模型选型建议(按硬件匹配)

不同参数量的模型对硬件要求差异较大,新手可按以下场景选择:

模型参数量 硬件要求 适用场景
1.5B-7B(如deepseek-r1:1.5b) 4GB-8GB显存(如RTX 3050、RTX 4060) 个人测试、简单聊天/摘要
13B-14B 12GB-24GB显存(如RTX 3090、RTX 4090) 复杂推理、长文本处理
30B+ 48GB+显存(如RTX A6000、A100) 企业级应用、多模态交互

✅ 新手推荐:优先选择 deepseek-r1:1.5b(1.5B参数量),对硬件要求低,部署成功率高。

3.3 部署Ollama(分场景)

场景1:虚拟机/Linux服务器部署
  1. 下载并安装Ollama:

    # 创建安装目录
    mkdir /usr/local/bin/ollama1
    # 上传Ollama安装包(本地下载后通过rz命令上传)
    mv ollama-linux-amd64.tgz /usr/local/bin/ollama1/
    # 解压
    cd /usr/local/bin/ollama1
    tar -xzvf ollama-linux-amd64.tgz
    # 创建软连接(全局可执行ollama命令)
    ln -s /usr/local/bin/ollama1/bin/ollama /usr/local/bin/ollama
    
  2. 验证安装:ollama --version 显示版本号即为成功。

  3. 配置为系统服务(开机自启):

    # 创建服务配置文件
    vi /etc/systemd/system/ollama.service
    

    粘贴以下内容(按 i 编辑,Esc+:wq 保存):

    [Unit]
    Description=Ollama Service
    After=network-online.target
    
    [Service]
    ExecStart=/usr/local/bin/ollama serve
    User=root
    Group=root
    Restart=always
    RestartSec=3
    Environment="PATH=$PATH"
    Environment="OLLAMA_MODELS=/home/ollama/models"
    Environment="OLLAMA_HOST=0.0.0.0:11434"  # 允许局域网访问
    
    [Install]
    WantedBy=default.target
    
  4. 启动Ollama服务:

    systemctl daemon-reload  # 重新加载配置
    systemctl enable ollama   # 开机自启
    systemctl start ollama    # 启动服务
    systemctl status ollama   # 验证状态(running即为成功)
    
  5. 关闭防火墙(允许Dify访问):

    systemctl stop firewalld
    systemctl disable firewalld
    
  6. 部署Deepseek模型:

    ollama run deepseek-r1:1.5b  # 自动下载并启动模型
    

    ✅ 验证:模型启动后,可直接在命令行输入问题测试(如“介绍Dify”)。

场景2:Win/Mac本地部署
  1. 下载安装包:访问Ollama官网(https://ollama.com),下载对应系统安装包;
  2. 自定义安装路径:
    • 创建文件夹:D:\ollamaD:\ollama\models
    • 安装时选择路径 D:\ollama
    • 配置环境变量:打开cmd,执行 setx OLLAMA_MODELS d:\ollama\models /M
  3. 允许局域网访问:cmd中执行 setx OLLAMA_HOST 0.0.0.0
  4. 部署模型:打开cmd,执行 ollama run deepseek-r1:1.5b(自动下载启动);
  5. 验证:浏览器访问 http://localhost:11434,显示“Ollama is running”即为成功。

四、Dify对接本地大模型(Ollama+Deepseek)

完成Ollama和模型部署后,需将大模型接入Dify,让Dify具备“思考能力”。以下分Win和服务器场景说明:

4.1 前置配置(解决对接报错)

Dify 1.x版本后默认异步对接模型,需修改配置文件确保连接成功:

场景1:Win本地Dify
  1. 停止Dify服务:进入Dify Docker目录,执行 docker compose down
  2. 编辑 .env 文件:用记事本打开 D:\DockerProject\dify-1.9.2\dify-1.9.2\docker\.env,添加以下内容:
    CUSTOM_MODEL_ENABLED=true
    OLLAMA_API_BASE_URL=http://你的WinIP:11434  # 如http://192.168.1.104:11434(cmd输入ipconfig获取)
    PROVIDER_OLLAMA_API_BASE_URL=http://你的WinIP:11434
    PLUGIN_WORKING_PATH=/app/cwd
    PLUGIN_PYTHON_ENV_INIT_TIMEOUT=6400
    PLUGIN_MAX_EXECUTION_TIMEOUT=2400
    PIP_MIRROR_URL=https://mirrors.aliyun.com/pypi/simple  # 加速依赖安装
    
  3. 复制并编辑 middleware.env
    • 复制 middleware.env.example,重命名为 middleware.env
    • 打开后添加:
      PLUGIN_PYTHON_ENV_INIT_TIMEOUT=6400
      PLUGIN_MAX_EXECUTION_TIMEOUT=2400
      PIP_MIRROR_URL=https://mirrors.aliyun.com/pypi/simple
      
  4. 重启Dify:docker compose up
场景2:服务器/虚拟机Dify
  1. 停止Dify服务:docker compose down

  2. 编辑 .env 文件:

    cd /root/dify-1.9.2/docker/
    vi .env  # 按i编辑
    

    添加以下内容(替换为服务器/虚拟机IP):

    CUSTOM_MODEL_ENABLED=true
    OLLAMA_API_BASE_URL=http://192.168.23.145:11434
    PROVIDER_OLLAMA_API_BASE_URL=http://192.168.23.145:11434
    PLUGIN_WORKING_PATH=/app/cwd
    PLUGIN_PYTHON_ENV_INIT_TIMEOUT=6400
    PLUGIN_MAX_EXECUTION_TIMEOUT=2400
    PIP_MIRROR_URL=https://mirrors.aliyun.com/pypi/simple
    

    Esc+:wq 保存。

  3. 配置 middleware.env

    cp middleware.env.example middleware.env
    vi middleware.env  # 添加上述3行配置
    
  4. 重启Dify:docker compose up

4.2 对接Ollama模型

  1. 访问Dify:浏览器打开Dify登录界面(本地:http://127.0.0.1,服务器:http://公网IP),用管理员账号登录;
  2. 安装Ollama插件:
    • 进入「设置」→「模型供应商」→「安装模型供应商」;
    • 搜索「Ollama」,点击「安装」(自动下载依赖,无需额外配置);
  3. 添加Deepseek模型:
    • 安装完成后,点击「Ollama」→「添加模型」;
    • 模型名称填写:deepseek-r1:1.5b(与Ollama部署的模型名称一致);
    • 其他参数默认,点击「保存」;
  4. 验证模型:
    • 进入Dify「工作台」,创建「智能体」或「工作流」;
    • 在模型选择下拉框中,若能看到 deepseek-r1:1.5b,说明对接成功;
    • 测试:向智能体发送问题(如“1+1等于几”),模型会返回响应。

📒本文总结

本文覆盖Dify从基础启停到云服务器部署、Ollama大模型对接的全流程,核心要点如下:

  1. 服务启停:本地用Docker Desktop图形化操作,服务器/虚拟机用命令行,优先前台运行(便于排查日志);
  2. 部署选择:新手推荐先通过虚拟机练习,熟悉后再迁移到云服务器;
  3. 模型对接:Ollama是新手部署本地模型的最优选择,需确保Dify配置文件中的IP与Ollama服务IP一致;
  4. 避坑指南:启动失败时查看日志、检查Docker状态;对接报错时优先配置 .envmiddleware.env 文件。

🔍更多内容

💡Dify:企业级AI应用开发全攻略
💡Dify安装全攻略:虚拟机到本地部署
💡中草药识别与菜谱生成实战指南
💡AI智能体入门教程
💡智能出题系统:让教学更高效


1️⃣关注博主🌀与你共同遨游前端!
2️⃣博主简历🌀与你共同了解博主!
3️⃣扣子实战开发🌀解锁AI智能体搭建


📢:辛苦码的干货,求点赞+收藏 呀~ 问题留言或戳公众号,第一时间回复 + 解锁海量编程资源!💌


注:原创首发CSDN©️波仔椿 版权所有,转载请注明原文地址,避免侵权追责。

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐