> 技术文档 > 从零开始在Ubuntu上快速部署Docker和Dify:结合 Dify + 蓝耘 MaaS平台打造 AI 应用实战指南

从零开始在Ubuntu上快速部署Docker和Dify:结合 Dify + 蓝耘 MaaS平台打造 AI 应用实战指南


目 录

  • 引言
  • 一、借助阿里云源安装Docker和Compose
  • 二、拉取并部署Dify
  • 三、启动Dify服务
  • 四、初始化 Dify 管理员账号
  • 五、安装模型供应商插件
  • 六、如何获取蓝耘Maas平台API
  • 七、构建 AI 应用示例
  • 总结

引言

在人工智能应用快速发展的今天,如何高效部署 AI 应用并灵活调用不同的大模型能力,已经成为开发者和企业的核心需求之一。本文将详细介绍如何在 Ubuntu 环境中借助 阿里云镜像源快速安装 Docker 与 Docker Compose,并完成 Dify 智能应用平台的部署与配置。通过引入 蓝耘 MaaS 平台提供的 API 接口,我们不仅可以快速接入大规模语言模型,还能基于 Dify 构建属于自己的 AI 应用,极大地提升开发效率与使用体验。

一、借助阿里云源安装Docker和Compose

1、安装必要依赖

apt updateapt install -y ca-certificates curl gnupg lsb-release

从零开始在Ubuntu上快速部署Docker和Dify:结合 Dify + 蓝耘 MaaS平台打造 AI 应用实战指南

2、 添加阿里云 Docker GPG 密钥

mkdir -p /etc/apt/keyringscurl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | gpg --dearmor -o /etc/apt/keyrings/docker.gpg

从零开始在Ubuntu上快速部署Docker和Dify:结合 Dify + 蓝耘 MaaS平台打造 AI 应用实战指南

3、 写入阿里云 Docker 软件源

echo \\ \"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://mirrors.aliyun.com/docker-ce/linux/ubuntu \\ $(lsb_release -cs) stable\" | \\ sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

从零开始在Ubuntu上快速部署Docker和Dify:结合 Dify + 蓝耘 MaaS平台打造 AI 应用实战指南

4、 安装 Docker 及 Compose 插件

apt updateapt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

从零开始在Ubuntu上快速部署Docker和Dify:结合 Dify + 蓝耘 MaaS平台打造 AI 应用实战指南
从零开始在Ubuntu上快速部署Docker和Dify:结合 Dify + 蓝耘 MaaS平台打造 AI 应用实战指南

5、 验证安装

docker -vdocker compose version

从零开始在Ubuntu上快速部署Docker和Dify:结合 Dify + 蓝耘 MaaS平台打造 AI 应用实战指南

二、拉取并部署Dify

1、 安装SSH服务

apt updateapt install openssh-server -y

从零开始在Ubuntu上快速部署Docker和Dify:结合 Dify + 蓝耘 MaaS平台打造 AI 应用实战指南

2、 查看SSH运行状态(成功)

systemctl status ssh

从零开始在Ubuntu上快速部署Docker和Dify:结合 Dify + 蓝耘 MaaS平台打造 AI 应用实战指南

3、 可以在电脑浏览器访问并下载:
https://github.com/langgenius/dify/archive/refs/heads/main.zip
这里我在本地下载好了zip通过CRT上传到了Ubuntu里面
从零开始在Ubuntu上快速部署Docker和Dify:结合 Dify + 蓝耘 MaaS平台打造 AI 应用实战指南
在Ubuntu里面也能看到了
从零开始在Ubuntu上快速部署Docker和Dify:结合 Dify + 蓝耘 MaaS平台打造 AI 应用实战指南

4、 解压ZIP
这里是将压缩包移动到了指定的文件夹里面后进行的解压,这样会避免很多不必要的麻烦(大家一定要看清文件路径)

unzip dify-main.zipcd dify-main/docker

从零开始在Ubuntu上快速部署Docker和Dify:结合 Dify + 蓝耘 MaaS平台打造 AI 应用实战指南

这里进入的是docker子目录,里面才有docker-compose.yml 配置文件

从零开始在Ubuntu上快速部署Docker和Dify:结合 Dify + 蓝耘 MaaS平台打造 AI 应用实战指南

三、启动Dify服务

这里需要确保我们在docker/目录下进行,然后输入:

docker compose up -d

这里我在检查docker运行状态和网络都没有问题之后,决定更换源试一下
从零开始在Ubuntu上快速部署Docker和Dify:结合 Dify + 蓝耘 MaaS平台打造 AI 应用实战指南

开启科学上网后
然后重新运行(这里可能时间较久)

docker-compose up -d

关于网络问题这里补充一下 遇到这个错误\"Get ‘https://registry-1.docker.io/v2/’: net/http:
request canceled while waiting for connection (Client.Timeout exceeded
while awaiting headers)\"的解决办法

  • 网络连接问题:确保自己的网络是否能访问互联网,尝试ping一下即可。
  • 镜像源访问受限:可以尝试更换为国内镜像源,配置镜像加速器。
  • 增加请求超时时间:可以尝试增加 Docker 的默认超时时间,以避免超时错误。
  • 代理设置:如果使用了代理,确保代理配置正确,或者尝试删除代理设置。

从零开始在Ubuntu上快速部署Docker和Dify:结合 Dify + 蓝耘 MaaS平台打造 AI 应用实战指南

成功拉取并启动如下
遇到这个错误,重新输入启动命令即可(下载时间过长导致的)

ERROR: Get \"https://registry-1.docker.io/v2/\": net/http: TLS handshake timeout

从零开始在Ubuntu上快速部署Docker和Dify:结合 Dify + 蓝耘 MaaS平台打造 AI 应用实战指南

四、初始化 Dify 管理员账号

在浏览器打开:

http://你的Ubuntu主机IP/install

从零开始在Ubuntu上快速部署Docker和Dify:结合 Dify + 蓝耘 MaaS平台打造 AI 应用实战指南

五、安装模型供应商插件

在 Dify 后台操作界面中:

  • 点击右上角头像 → 插件 → Marketplace从零开始在Ubuntu上快速部署Docker和Dify:结合 Dify + 蓝耘 MaaS平台打造 AI 应用实战指南

  • 安装自己需要的插件从零开始在Ubuntu上快速部署Docker和Dify:结合 Dify + 蓝耘 MaaS平台打造 AI 应用实战指南

  • 前往“设置 → lanyun模型供应商”,找到OpenAI-API-compatible,然后配置 API Key 与地址以及相关配置信息即可从零开始在Ubuntu上快速部署Docker和Dify:结合 Dify + 蓝耘 MaaS平台打造 AI 应用实战指南从零开始在Ubuntu上快速部署Docker和Dify:结合 Dify + 蓝耘 MaaS平台打造 AI 应用实战指南

Dify 不自带模型,必须配置好至少一个 LLM 才能进行智能问答。

六、如何获取蓝耘Maas平台API

先说说蓝耘这个平台
如何注册蓝耘智算平台
1.点击注册链接:蓝耘智算平台
2.进入下面图片界面,输入手机号并获取验证码,输入邮箱,设置密码,点击注册在这里插入图片描述
从零开始在Ubuntu上快速部署Docker和Dify:结合 Dify + 蓝耘 MaaS平台打造 AI 应用实战指南
蓝耘是一家专业的GPU算力云服务提供商,基于行业领先的灵活的基础设施及大规模的GPU算力资源,为客户提供开放、高性能、高性价比的算力云服务,助力客户AI模型构建、训练和推理的业务全流程。

这里给大家送给福利。千万 Token 资源包福利都在送,感兴趣的赶紧来吧
https://console.lanyun.net/#/register?promoterCode=18586cc762

进来之后,找到Maas平台—API KEY管理—创建API KEY即可,然后复制去OpenAI-API-compatible即可

从零开始在Ubuntu上快速部署Docker和Dify:结合 Dify + 蓝耘 MaaS平台打造 AI 应用实战指南

七、构建 AI 应用示例

在主界面点击“创建空白应用”,名字为文章生成器
从零开始在Ubuntu上快速部署Docker和Dify:结合 Dify + 蓝耘 MaaS平台打造 AI 应用实战指南

这里添加一个HTTP请求,在API选择POST请求并输入https://maas-api.lanyun.net/v1/chat/completions
配置Headers(请求头):

  • 请求头1:Name(Content-Type),Value(application/json)
  • 请求头2:Name(Authorization),Value(Bearer 蓝耘MaaS平台的APIKEY)
    配置Body(请求体):
{ \"model\": \"/maas/deepseek-ai/DeepSeek-V3.1\", \"messages\": [ { \"role\": \"system\", \"content\": \"你是一个专业的内容创作助手,擅长根据用户需求创作高质量文章。\" }, { \"role\": \"user\", \"content\": \"请根据以下要求创作文章:\\n主题:{{ $json.topic }}\\n写作风格:{{ $json.style }}\\n文章长度:{{ $json.length }}\\n关键词:{{ $json.keywords }}\\n\\n请创作一篇结构清晰、内容丰富的文章。\" } ], \"max_tokens\": 2000, \"temperature\": 0.7}

从零开始在Ubuntu上快速部署Docker和Dify:结合 Dify + 蓝耘 MaaS平台打造 AI 应用实战指南

然后进行测试,没有问题,文章出来了
从零开始在Ubuntu上快速部署Docker和Dify:结合 Dify + 蓝耘 MaaS平台打造 AI 应用实战指南

这里格式还是不太行,我想输出Markdown格式,于是我开始调整,这个里面添加模版转换节点,然后输入:

// 获取处理后的数据const items = $input.all();const processedData = items[0].json;// 生成 Markdown 内容const markdownContent = `# ${processedData.metadata.title}---**创建时间:** ${new Date(processedData.metadata.createdAt).toLocaleString(\'zh-CN\')} **字数统计:** ${processedData.metadata.wordCount} 字符 **文章风格:** ${processedData.metadata.style} ---## 正文内容${processedData.content}---## 文档信息- **生成时间:** ${new Date().toLocaleString(\'zh-CN\')}- **文件格式:** Markdown (.md)- **处理状态:** 已完成内容格式化和优化---*本文档由 n8n 工作流自动生成*`;// 生成文件名(使用时间戳避免重复)const timestamp = new Date().toISOString().replace(/[:.]/g, \'-\').slice(0, 19);const fileName = `${processedData.metadata.title.replace(/[^\\w\\u4e00-\\u9fa5]/g, \'_\')}_${timestamp}.md`;// 打印下载信息console.log(`📁 Markdown 文件已准备完成`);console.log(`📄 文件名:${fileName}`);console.log(`📊 文件大小:${markdownContent.length} 字符`);// 返回可下载的文件数据return [{ json: { ...processedData, markdown: { content: markdownContent, fileName: fileName, mimeType: \'text/markdown\', size: markdownContent.length } }, binary: { data: { data: Buffer.from(markdownContent, \'utf8\').toString(\'base64\'), mimeType: \'text/markdown\', fileName: fileName, fileExtension: \'md\' } }}];

这里图片中显示内容没有问题的哈,但是无法分辨是否是按照Markdown格式输出
从零开始在Ubuntu上快速部署Docker和Dify:结合 Dify + 蓝耘 MaaS平台打造 AI 应用实战指南

于是我将内容复制出来,使用在线工具进行查看,发现确实是按照Markdown格式输出。
从零开始在Ubuntu上快速部署Docker和Dify:结合 Dify + 蓝耘 MaaS平台打造 AI 应用实战指南

整体的配置还是很简单,完整的工作流如下:
从零开始在Ubuntu上快速部署Docker和Dify:结合 Dify + 蓝耘 MaaS平台打造 AI 应用实战指南

总结

我们完成了以下核心工作:

  1. 环境配置与依赖安装:快速完成 Docker 安装和网络优化。
  2. Dify 平台部署:轻松搭建可视化智能应用平台。
  3. 蓝耘 MaaS 平台 API 接入:与 OpenAI 兼容,实现高性能模型调用。
  4. AI 应用构建与Markdown格式化:自动化文章生成与格式化。

蓝耘 MaaS API 的核心优势:

  • 高性能算力支持:GPU加速响应更快
  • 兼容OpenAI API:快速接入零门槛
  • 高性价比:更低成本调用大模型
  • 灵活扩展性:支持多模型、多场景应用

通过结合 Dify + 蓝耘 MaaS API,我们能够以极低的门槛实现 AI 应用的开发与部署,为内容创作、智能问答、数据分析等场景提供更强大的能力和更高的效率。