Next AI Draw.io 如何用 Docker Compose 离线部署内网环境并自托管 draw.io

发布时间:2026/9/11 17:44:14
Next AI Draw.io 如何用 Docker Compose 离线部署内网环境并自托管 draw.io Next AI Draw.io 如何用 Docker Compose 离线部署内网环境并自托管 draw.io【免费下载链接】next-ai-draw-ioA next.js web application that integrates AI capabilities with draw.io diagrams. This app allows you to create, modify, and enhance diagrams through natural language commands and AI-assisted visualization.项目地址: https://gitcode.com/GitHub_Trending/ne/next-ai-draw-ioNext AI Draw.io 默认通过embed.diagrams.net加载 draw.io 编辑器。当部署目标是无外网的内网环境、或该地址被网络策略屏蔽时浏览器会解析失败文档中记录的现象是提示找不到 embed.diagrams.net 的服务器 IP 地址。官方给出的离线方案是用 Docker Compose 自托管一个jgraph/drawio镜像并通过构建参数让 Next AI Draw.io 指向它。本文按照仓库中 离线部署文档 和根目录 docker-compose.yml 的写法给出从准备到验证的完整操作路径。准备条件一台已安装 Docker 的服务器Docker Compose 随 Docker 提供。克隆项目仓库并把仓库中的 env.example 复制为.env在.env中配置你要用的 AI 提供商。AI_PROVIDER与AI_MODEL是必填项对应的 API Key 按所选提供商填写例如 OpenAI 填OPENAI_API_KEY可选列表和用法见 Docker 运行文档 与 AI 提供商文档。确认部署机的 8080 与 3000 端口未被占用因为 Compose 文件分别将 draw.io 和 Next AI Draw.io 映射到这两个端口。需要提前知道的一个关键约束NEXT_PUBLIC_DRAWIO_BASE_URL是构建时变量会在构建阶段被打进前端 JS 代码运行期改环境变量不生效。也就是说这个值一旦确定后续要改就必须重新构建镜像这一点在 FAQ 中也被特别强调。编写 docker-compose.yml仓库根目录已提供一份可直接参考的 docker-compose.yml离线部署场景下最小配置为services: drawio: image: jgraph/drawio:latest ports: [8080:8080] next-ai-draw-io: build: context: . args: - NEXT_PUBLIC_DRAWIO_BASE_URLhttp://localhost:8080 ports: [3000:3000] env_file: .env depends_on: [drawio]几个字段的作用drawio服务拉取官方 draw.io 镜像并对外暴露 8080 端口它是替代embed.diagrams.net的自托管编辑器。build.context: .表示使用当前仓库目录配合仓库中的 Dockerfile构建 Next AI Draw.io 镜像args中的NEXT_PUBLIC_DRAWIO_BASE_URL就是传给 Dockerfile 构建阶段的 draw.io 地址。env_file: .env让容器读取你在准备阶段配置好的 AI 提供商变量。depends_on: [drawio]保证 draw.io 先于应用启动。仓库现成的 compose 文件还带有一个数据卷- ./data:/app/data用于持久化 admin panel 的设置data/settings.json如果你要启用 admin 面板建议保留这条挂载。NEXT_PUBLIC_DRAWIO_BASE_URL 应该填什么文档中的核心警告是该地址必须是最终用户在浏览器里能访问到的地址因为浏览器会直接去连它加载 draw.io。按部署场景取值场景URL 值本地主机 (Localhost)http://localhost:8080远程/服务器http://YOUR_SERVER_IP:8080替换为部署机的实际 IP不要填 Docker 内部网络别名比如http://drawio:8080——它只在 Compose 内部网络里可解析用户浏览器访问不到会导致画布加载失败。构建并启动在仓库根目录执行docker compose up -d首次执行会先拉取jgraph/drawio:latest再按args指定的NEXT_PUBLIC_DRAWIO_BASE_URL构建应用镜像。构建完成前应用镜像里打包的还是构建参数里的 draw.io 地址之后修改args需要重新构建镜像命令不变Compose 检测到 build 变更时会重建。如果你的目标环境是完全断网的内网文档给出的做法是在可联网的机器上修改 Dockerfile 相关参数、把镜像构建出来然后把镜像以及仓库文件传输到内网机器上再在内网执行同样的 Compose 流程。这一步依赖内网机器已具备 Docker 环境。验证部署结果启动后打开http://localhost:3000远程部署则用http://服务器IP:3000页面能正常加载说明 Next AI Draw.io 应用本身起来了。关键验证点在于画布进入页面发起一次画图draw.io 编辑器应从自托管的 8080 端口加载而不是尝试访问embed.diagrams.net。如果仍然出现解析embed.diagrams.net失败的现象检查两点args里的值是否是浏览器可访问的地址、修改args后镜像是否已重新构建。限制与边界构建时变量约束NEXT_PUBLIC_DRAWIO_BASE_URL改值 重新构建镜像运行期env_file里的同名变量无法覆盖它。远程访问时 URL 里必须写浏览器可达的服务器 IPDocker 服务别名不可用。AI 提供商的配置.env与 draw.io 自托管是两条独立的线离线解决的是编辑器加载问题模型调用仍然依赖你在.env中配置的提供商能否从服务器访问到文档对离线方案只覆盖前者。更多配置项子目录部署、NEXT_PUBLIC_BASE_PATH等可在仓库 docker-compose.yml 的注释中查看在线部署方式与离线方式的区别见 Docker 文档。【免费下载链接】next-ai-draw-ioA next.js web application that integrates AI capabilities with draw.io diagrams. This app allows you to create, modify, and enhance diagrams through natural language commands and AI-assisted visualization.项目地址: https://gitcode.com/GitHub_Trending/ne/next-ai-draw-io创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

关于本文作者

来自尧图内容编辑团队

尧图内容编辑团队 内容团队

尧图内容编辑团队

本文由尧图网络内容编辑团队执笔。团队由资深项目经理、前端工程师与设计师组成,所有内容均来自亲手交付的真实项目,先讲清问题、再给出可落地的解法。尧图深耕北京网站建设十年,服务过京华建材集团、智造科技等各行业客户,把一线经验沉淀为可复用的行业观察。

  • 十年建站经验,覆盖建材、制造、服务、文创等
  • 项目经理把关选题与事实准确性
  • 工程师与设计师联合撰写专业细节
  • 统一编辑规范,保证文风与排版一致
  • 每月复盘转化数据,迭代选题方向

延伸阅读

相关资讯与近期热门内容

深度阅读推荐

建站决策前值得细读的三篇

网站改版的5个关键决策
2024-08-12

网站改版的5个关键决策

什么时候该改版、改到什么程度、如何避免流量掉光,京华建材集团改版复盘给出答案。

获取专属建站方案

看完文章,把您的行业与预算告诉我们,免费获取一份量身定制的官网建设方案与报价。

立即免费咨询