1. Ubuntu 24.04 本地 AI 开发环境搭建指南
最近在折腾本地 AI 开发环境,发现 Dify + Ollama 的组合特别适合想要快速搭建大模型应用原型的开发者。这套方案最大的优势就是完全本地化运行,不需要依赖云端 API,数据隐私有保障,而且可以自由选择各种开源模型。下面就把我在 Ubuntu 24.04 系统上的完整配置过程记录下来,包括踩过的坑和优化技巧。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 基础环境准备
2.1 系统要求检查
在开始之前,建议确保你的 Ubuntu 系统满足以下最低配置要求:
- Ubuntu 24.04 LTS(其他版本可能会有兼容性问题)
- 至少 16GB 内存(运行 7B 模型的最低要求)
- 50GB 可用磁盘空间(模型文件体积较大)
- NVIDIA GPU 显存 8GB 以上(如需 GPU 加速)
- Docker 20.10.0 或更高版本
提示:如果没有独立显卡,也可以使用纯 CPU 运行,但推理速度会明显下降。建议至少准备 32GB 内存用于 CPU 模式。
2.2 Docker 安装与配置
Dify 依赖 Docker 环境运行,以下是 Ubuntu 24.04 上的安装步骤:
bash复制# 卸载旧版本(如果有)
sudo apt-get remove docker docker-engine docker.io containerd runc
# 安装依赖
sudo apt-get update
sudo apt-get install \
ca-certificates \
curl \
gnupg \
lsb-release
# 添加 Docker 官方 GPG 密钥
sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
# 设置稳定版仓库
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
# 安装 Docker 引擎
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-compose-plugin
# 验证安装
sudo docker run hello-world
安装完成后,建议进行以下优化配置:
bash复制# 将当前用户加入 docker 组,避免每次使用 sudo
sudo usermod -aG docker $USER
newgrp docker
# 配置 Docker 镜像加速(国内用户建议配置)
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://docker.mirrors.ustc.edu.cn"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
3. Dify 服务部署
3.1 获取 Dify 源码
Dify 是一个开源的 LLM 应用开发平台,支持可视化工作流编排。我们首先克隆官方仓库:
bash复制git clone https://ghfast.top/https://github.com/langgenius/dify.git
cd dify/docker
如果 GitHub 访问不稳定,可以使用镜像源:
bash复制git clone https://hub.yzuu.cf/langgenius/dify.git
3.2 配置文件修改
Dify 的配置主要通过两个文件控制:
.env- 环境变量配置文件docker-compose.yaml- Docker 编排配置
bash复制# 复制示例配置文件
cp .env.example .env
关键配置项说明:
bash复制# 修改端口配置(避免与系统服务冲突)
NGINX_PORT=8010
NGINX_SSL_PORT=4433
# 上传文件大小限制(根据需求调整)
UPLOAD_FILE_SIZE_LIMIT=1500
NGINX_CLIENT_MAX_BODY_SIZE=1500M
# 数据库配置(生产环境建议修改)
POSTGRES_PASSWORD=your_secure_password
REDIS_PASSWORD=your_secure_password
对应的 docker-compose.yaml 修改:
yaml复制services:
nginx:
ports:
- "${NGINX_PORT:-8010}:80"
- "${NGINX_SSL_PORT:-4433}:443"
environment:
UPLOAD_FILE_SIZE_LIMIT: ${UPLOAD_FILE_SIZE_LIMIT:-1500}
NGINX_CLIENT_MAX_BODY_SIZE: ${NGINX_CLIENT_MAX_BODY_SIZE:-1500M}
3.3 启动与停止服务
bash复制# 启动服务(-d 表示后台运行)
docker compose up -d
# 查看日志
docker compose logs -f
# 停止服务
docker compose down
启动后,可以通过 http://localhost:8010 访问 Dify 控制台。首次访问需要创建管理员账户。
常见问题:如果遇到端口冲突,可以使用
netstat -tulnp | grep 8010查看占用进程,然后修改.env中的端口号。
4. Ollama 本地模型服务
4.1 安装 Ollama
Ollama 是一个本地化的大模型运行框架,支持多种开源模型。以下是手动安装步骤:
bash复制# 下载最新版 Ollama
wget https://gh.ddlc.top/https://github.com/ollama/ollama/releases/download/v0.13.2/ollama-linux-amd64.tgz
# 创建安装目录
sudo mkdir -p /usr/ollama
sudo tar -xzvf ollama-linux-amd64.tgz -C /usr/ollama
4.2 配置环境变量
将 Ollama 添加到系统 PATH:
bash复制sudo tee -a /etc/profile <<-'EOF'
# ollama 环境
export PATH=/usr/ollama/bin:$PATH
EOF
# 立即生效
source /etc/profile
4.3 模型下载与管理
Ollama 支持多种开源模型,以下是常用命令:
bash复制# 查看可用模型
ollama list
# 下载模型(以 qwen3:1.7b 为例)
ollama pull qwen3:1.7b
# 运行模型
ollama run qwen3:1.7b
# 删除模型
ollama rm qwen3:1.7b
常用模型推荐:
qwen3:1.7b- 轻量级中文模型llama3:8b- Meta 最新开源模型mistral:7b- 英文表现优秀的模型gemma:7b- Google 开源模型
提示:模型首次下载可能需要较长时间,建议使用稳定的网络环境。国内用户可以考虑先下载模型文件再手动导入。
5. Dify 与 Ollama 集成
5.1 配置 Ollama 插件
- 登录 Dify 控制台
- 进入 "插件中心" → "Ollama"
- 点击 "安装" 并启用插件
5.2 创建工作流
- 进入 "工作流" → "新建工作流"
- 添加 "LLM" 节点
- 在节点配置中选择 "Ollama" 作为模型提供商
5.3 模型配置详解
关键配置项说明:
- Base URL:
http://[你的IP]:11434(Ollama 默认端口) - 模型名称:与
ollama list显示的完全一致 - 温度(Temperature):控制生成随机性(0-1)
- 最大 tokens:限制生成长度
获取本机 IP:
bash复制hostname -I | awk '{print $1}'
5.4 高级配置技巧
- 多模型切换:可以创建多个 LLM 节点,配置不同模型进行对比
- 参数调优:根据任务类型调整 temperature 和 top_p 参数
- 系统提示词:在节点配置中添加角色定义,引导模型行为
- 上下文管理:合理设置 max_tokens 避免内存溢出
6. 性能优化与问题排查
6.1 GPU 加速配置
如果有 NVIDIA 显卡,可以显著提升推理速度:
bash复制# 安装 NVIDIA 容器工具包
distribution=$(. /etc/os-release;echo $ID$VERSION_ID) \
&& curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg \
&& curl -fsSL https://nvidia.github.io/libnvidia-container/$distribution/libnvidia-container.list | \
sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' | \
sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list
sudo apt-get update
sudo apt-get install -y nvidia-container-toolkit
sudo systemctl restart docker
然后在运行 Ollama 时添加 GPU 参数:
bash复制ollama run --gpu qwen3:1.7b
6.2 常见问题解决方案
问题1:Ollama 服务无法启动
- 检查
/usr/ollama/bin/ollama是否有执行权限 - 查看日志
journalctl -u ollama -f - 确保端口 11434 未被占用
问题2:模型加载失败
- 确认模型名称拼写正确
- 检查磁盘空间
df -h - 尝试重新下载模型
ollama pull
问题3:Dify 无法连接 Ollama
- 确认防火墙设置
sudo ufw status - 测试网络连通性
curl http://localhost:11434 - 检查 Ollama 是否运行
ps aux | grep ollama
问题4:推理速度慢
- 使用更小的模型版本(如 1.7B 代替 7B)
- 启用 GPU 加速
- 调整 batch_size 参数
7. 实际应用案例
7.1 本地知识问答系统
- 在 Dify 中创建知识库,上传公司文档或技术手册
- 设计工作流:用户问题 → 知识检索 → LLM 生成回答
- 使用 qwen3 模型进行中文问答优化
7.2 自动化文档处理
- 配置文件上传节点接收 PDF/Word
- 添加文本提取节点转换内容
- 使用 LLM 节点生成摘要或分类
7.3 多模型对比测试
- 创建并行工作流分支
- 每个分支配置不同模型(如 qwen3 和 llama3)
- 对比输出结果的质量和风格
8. 维护与升级建议
8.1 定期备份
关键数据包括:
- Dify 的 PostgreSQL 数据库
- Ollama 的模型文件(默认在
~/.ollama) - 工作流配置(导出为 JSON)
8.2 版本升级
bash复制# Dify 升级
cd dify/docker
git pull
docker compose down
docker compose pull
docker compose up -d
# Ollama 升级
ollama stop
rm /usr/ollama/bin/ollama
wget 最新版本URL -O /usr/ollama/bin/ollama
chmod +x /usr/ollama/bin/ollama
ollama start
8.3 资源监控
建议部署监控工具:
bash复制# 安装 ctop(容器监控)
sudo apt install ctop
# 安装 nvtop(GPU 监控)
sudo apt install nvtop
# 基本使用
ctop # 查看容器状态
nvtop # 查看 GPU 使用
这套本地 AI 开发环境我已经稳定使用了三个月,最大的感受就是完全掌控数据的安心感。对于中小型企业或者注重隐私的开发者,这种方案比直接使用云 API 更加灵活可控。特别是在调试阶段,可以随时查看中间结果,调整模型参数,这是云端服务很难提供的开发体验。
