尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
Docker一键部署Univer Workspace:生产环境配置、GitHub/Discord OAuth登录与数据卷指南
Docker一键部署Univer Workspace生产环境配置、GitHub/Discord OAuth登录与数据卷指南【免费下载链接】univer-workspaceAn open-source Office workspace where people and AI agents create, collaborate, and review together.项目地址: https://gitcode.com/gh_mirrors/un/univer-workspace 本文带你用Docker 一键部署 Univer Workspace—— 开源 Office 协作工作区覆盖生产环境变量、GitHub/Discord OAuth 登录配置与数据卷持久化三大核心环节从拉取源码到对外提供服务全程约 10 分钟新手也能一次跑通。一、Univer Workspace 是什么Univer Workspace 是一个可自托管的开源办公与协作平台把**表格、文档、幻灯片、数据库Base、画布Board**装进同一个运行时支持多人实时协作、权限管理、回收站、版本历史还能为 AI Agent 提供隔离的 Worktree 评审工作流。部署架构非常轻量一个 Server 容器同时托管后端 API 和构建好的前端页面数据落在一个.data数据目录里——这也是本文 Docker 数据卷配置的核心。 部署细节官方出处apps/workspace/README.md二、Docker一键部署三步启动1. 获取源码git clone https://gitcode.com/gh_mirrors/un/univer-workspace cd univer-workspace2. 构建镜像镜像由多阶段构建完成先编译前端与 Server再打出一个只含生产依赖的轻量运行层基于node:24-bookworm-slim。构建文件位于 apps/workspace/Dockerfiledocker build \ --build-arg VITE_UNIVER_LICENSE$VITE_UNIVER_LICENSE \ -f apps/workspace/Dockerfile \ -t univer-workspace .⚠️VITE_UNIVER_LICENSE用于非 localhost 域名部署的运行时许可覆盖内置开发许可只对 localhost 生效生产域名部署必须通过该构建参数传入你自己的许可。3. 一键运行容器docker run --name univer-workspace \ -p 3020:3020 \ -v univer-workspace-data:/app/univer-workspace/.data \ -e GITHUB_CLIENT_ID \ -e GITHUB_CLIENT_SECRET \ -e GITHUB_CALLBACK_URLhttps://workspace.example.com/api/auth/github/callback \ -e DISCORD_CLIENT_ID \ -e DISCORD_CLIENT_SECRET \ -e DISCORD_CALLBACK_URLhttps://workspace.example.com/api/auth/discord/callback \ -e SECURE_COOKIEStrue \ univer-workspace容器默认以node 非 root 用户运行只暴露3020一个端口。启动后浏览器打开http://服务器IP:3020即可看到登录页API 文档在http://服务器IP:3020/api-docs与/openapi.yaml。三、生产环境配置关键环境变量清单配置模板见 .env.example。Docker 场景下用-e或--env-file传入最常碰到的项如下变量作用生产建议HOST/PORT监听地址与端口镜像默认0.0.0.0:3020保持默认靠端口映射对外SECURE_COOKIES会话 Cookie 是否仅 HTTPS 传输HTTPS 部署必须true纯 HTTP 环境才设falseSESSION_TTL_MS登录会话有效期默认 7 天按安全策略调整VITE_UNIVER_LICENSE前端构建期许可build-arg 传入非 localhost 域名必填METRICS_TOKEN启用带 Bearer 鉴权的/metrics端点接 Prometheus 监控时设置32 位以上随机串LOG_LEVEL日志级别info启动自检容器启动时会向 stdout 输出 JSON 行格式的启动诊断workspace.startup事件每个阶段带耗时与内存信息无需额外配置。排查卡在启动问题时直接docker logs即可定位到具体阶段。如需把指标接入监控面板仓库自带观测组件见 observability/README.md内含 Prometheus 抓取配置与 Grafana 仪表盘 univer-workspace.json。四、OAuth 登录GitHub / Discord 一键接入 GitHub 登录三项变量同时配置才会启用GITHUB_CLIENT_ID/GITHUB_CLIENT_SECRETGitHub OAuth App 的凭据GITHUB_CALLBACK_URL回调地址必须与 GitHub 侧填写的回调 URL逐字符一致生产环境形如https://workspace.example.com/api/auth/github/callbackGitHub OAuth App 只允许一个回调 URL本地开发与生产建议各建一个 App不要共用。首次 GitHub 登录会自动创建用户与个人空间登录成功后账号菜单里还可把 GitHub 账号绑定到已有用户。访问令牌只用于拉取 GitHub 资料不会被持久化存储。团队管控两个进阶开关GITHUB_ALLOWED_ORGANIZATIONS逗号分隔的组织白名单登录后校验组织成员资格PASSWORD_AUTH_ENABLEDfalse关闭密码注册/登录。两者配合并留空 Discord 配置时唯一登录路径就是属于指定 GitHub 组织——适合企业内网部署。若密码登录关闭且 GitHub、Discord 都未配置服务会拒绝启动防止把自己锁在门外。 Discord 登录同样三项齐备即启用DISCORD_CLIENT_ID、DISCORD_CLIENT_SECRET、DISCORD_CALLBACK_URL回调指向/api/auth/discord/callback。Workspace 只申请identify权限保存稳定的 Discord 用户 ID 与昵称不保存访问令牌。 如果你有自建 Discord Bot还能通过DISCORD_BOT_API_KEY共享密钥调用 Bot 登录接口让用户从 Discord 直接进入工作区。细节见 apps/workspace/README.md。五、数据卷持久化与数据安全 卷里有什么镜像把/app/univer-workspace/.data声明为 VOLUME三类数据都落在这里univer-workspace.sqlite—— 产品数据库空间、节点、权限、Issue 等当前 V9univer-collaboration.sqlite—— 协作数据快照、修订、实时协作、评论、版本历史univer-workspace-blobs—— 上传文件与资源字节所以只要-v univer-workspace-data:/app/univer-workspace/.data这一行升级镜像、重建容器都不丢数据。三条安全铁律不要在宿主机直接打开 SQLite 文件。产品库运行在 WAL 模式宿主机用另一个 SQLite 版本打开——哪怕只是读——都可能损坏文件。检查数据请先docker stop容器或docker exec … node从容器内操作。升级只滚动单个实例。启动时会自动执行数据库备份与 V0–V8 → V9 迁移迁移前会独占锁并做完整性校验切勿让新旧进程并发写同一个库文件。重置是显式操作。启动/重启不会重建数据库仅在一次性实验环境里才使用官方重置命令docker run --rm \ -v univer-workspace-data:/app/univer-workspace/.data \ univer-workspace node dist/server/db/reset.js六、常见部署问题速查 现象处理登录页没有 Continue with GitHub检查 GitHub 三项变量是否同时传入回调 URL 是否与 GitHub App 完全一致登录后 Cookie 丢失HTTPS 环境确认SECURE_COOKIEStrue纯 HTTP 才用false非 localhost 域名打开白屏/许可报错重新docker build并传入--build-arg VITE_UNIVER_LICENSE容器启动失败想定位原因docker logs univer-workspace找最后一个没有completed/failed配对的workspace.startup阶段想彻底清空重来先停容器再执行第五节的 reset 命令最后删除数据卷延伸阅读应用完整指南认证、存储、迁移apps/workspace/README.md部署与运维架构apps/workspace/docs/architecture.md数据模型说明apps/workspace/docs/data-model.md可观测性Prometheus / Grafanaobservability/README.md按照本文操作你已经拥有一台带 GitHub/Discord 登录、数据卷持久化的生产级 Univer Workspace 服务。下一步可以给团队开几个 Space或接入 Workspace Agent 让 AI 参与文档协作与评审。【免费下载链接】univer-workspaceAn open-source Office workspace where people and AI agents create, collaborate, and review together.项目地址: https://gitcode.com/gh_mirrors/un/univer-workspace创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
RELATED

相关推荐

03-Linux 内核与内核编程

03-Linux 内核与内核编程

3.1 Linux 内核的发展与演变版本时间标志性变化对驱动的意义1.01994单核、无模块化框架驱动必须编译进内核2.01996SMP 支持并发问题正式出现2.21999更完善的 VFS/网络栈驱动分层开始成形2.42001引入 kobject、sysfs 雏形设备模型起步2.62003统一设备模型、sysfs、kobject、plat…

📅 2026/10/7 20:33:44
Java基础学习笔记 09、IO流—对象序列化

Java基础学习笔记 09、IO流—对象序列化

文章目录 前言 一、认识序列化 二、实现序列化 1、实现序列化要求及说明 2、实例程序 自定义类准备 ①序列化对象 ②解序列化 三、深入了解序列化 序列化过程 解序列化过程 四、序列化相关问题 参考资料 前言 本文是付费专栏 《Java后端开发从入门到进阶》 的配套文章,所属阶…

📅 2026/10/7 20:28:44
维恩波特Vairnport 策略服务费推出的长期意义

维恩波特Vairnport 策略服务费推出的长期意义

从持续技术投入到长期价值循环,Vairnport 加速构建可持续平台发展机制随着全球金融市场不断数字化、智能化,金融科技平台之间的竞争正在从单纯的用户规模与市场扩张,逐渐转向技术能力、系统稳定性、风险管理能力以及长期服务能力的综合竞争。…

📅 2026/10/7 20:28:44
MORE NEWS

更多资讯

📰

核心语法—数据容器

一 、概述什么是数据容器?根据这三种标准,将数据容器分为五类二、列表list1、介绍列表是数据容器的一类,是一次性可以存储多个数据(元素)的特点:可以存储不同类型的元素,元素有序、可以重复、元…

📰

Personal Agent 六路争锋:默认委托权 = 入口密度 × 上下文深度 × 授权精细度 × 可撤回性

【摘要】2026年Personal Agent赛道竞争已从模型能力转向委托关系设计。本文基于经典委托-代理理论与全球行业公开规范,提出默认委托权入口密度上下文深度授权精细度可撤回性评估公式,以4个品类判定条件、5个产品分析维度拆解6条主流路线,交付…

📰

终端安全事后追溯能力解析:本地审计模块设计思路与落地实践

前言 终端安全防护体系可以简单分为三层:事前策略拦截风险、事中实时告警处置、事后审计追溯取证。 在实际项目实施我遇到过不少真实情况:有些单位部署完终端安全系统之后,只配置管控拦截策略,审计模块全部保持默认,结…

📰

微客AI助手安全复盘:94 个备份文件在公网上裸奔——一次拦截规则被绕过的教训

起因:一次例行的密级扫描接手一个网站没多久,做了一次例行的安全自检:扫描 webroot 目录下有没有不该对外暴露的文件——备份文件、编辑器临时文件、环境变量样本之类。扫描器给了个扎眼的数字:94 个 .bak 文件可以直接通过公网 U…

📰

AI应用开发成本控制:大模型API调用优化实战指南

1. 这不是省钱技巧,是AI应用落地的生存基本功“AI应用开发成本控制”这八个字,最近半年在我们团队晨会里出现频率比“需求评审”还高。不是因为大家突然爱算账了,而是去年Q3上线的三个AI功能模块,光大模型API调用费就吃掉了当季技…

📰

一行doctype竟让页面崩塌?真相揭秘!

很多前端新手写代码都有一个通病&#xff0c;复制模板只抄HTML结构&#xff0c;却完全忽略最顶部的 <!DOCTYPE html> 声明。不少人觉得这行代码毫无作用&#xff0c;看着像多余的注释&#xff0c;删掉也不影响页面展示&#xff0c;平时写demo、练习代码经常直接省略。但在…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬