OnlyOffice部署全攻略:从选型到避坑的自托管在线文档实践

OnlyOfficeOnlyOffice部署OnlyOffice安装问题 本内容遵循CC 4.0 BY-SA版权协议
王少冬 王少冬 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要

最近总有人问我同一个问题:为什么团队协作文档工具越换越多,最后都换到了 OnlyOffice?说实话,我最初接触这个名字,还是在帮一个朋友搞定 Nextcloud 部署的时候,当时顺手用了社区版做在线文档,后来发现这个工具在一堆同类软件里被反复提起的频率高得离谱。我也在几个项目里从零搭过 Office 套件,对比过微软的方案、开源的选择,还有各种云文档平台,最后的结论挺明确:OnlyOffice 不是那种“能用就行”的替代品,它真的改变了我对自托管办公软件的看法。

如果你正在纠结团队要不要上 OnlyOffice,或者你只是听说这玩意很火,想搞明白它到底强在哪里,又或者你刚下载完镜像准备部署,结果在安装和配置上卡住了——这篇文章就是冲着你来的。我会把选型逻辑、部署步骤、参数设定和踩坑记录都摊开讲,保证不是那种“复制粘贴就能跑但跑起来啥都不懂”的教程。

很多人在网上搜“onlyoffice server 下载地址”、“onlyoffice安装问题”,恰恰说明这个东西看起来简单,实际折腾起来有不少隐形门槛。这篇我就把那些文档里写得含糊的地方一并说透。

1. 为什么 OnlyOffice 越来越火:不只是“免费”这么简单

1.1 先搞清楚它到底是个什么定位

OnlyOffice 本质上是一套完整的办公套件,包含文档、表格、幻灯片三大件,还有邮件、项目、CRM 这类偏企业协作的功能模块。你从官网下载的 server 版本部署到自己的服务器之后,整个团队可以通过浏览器在线创建、编辑、协同办公,数据完全掌握在自己手里。

要理解它为什么受欢迎,得先对准一个痛点:很多公司对“数据上云”这件事是有顾虑的。微软 Office 365 和 Google Workspace 都很成熟,功能也确实强,但数据放在别人服务器上,对某些行业来说就是过不去的坎。OnlyOffice 给了另一个选项——代码开源、可自行部署、数据完全私有化,但代价是你得自己搞定服务器和运维。

这里有个非常关键的认知:OnlyOffice 并不是要和微软 Office 拼功能全面性,它拼的是“合规前提下的可用性”。什么场景下你会宁愿牺牲一点生态整合,也要自己掌控数据?政务、金融、设计院、律所、制造业研发部门,这些场景特别明显。我甚至接触过一些创业团队,一开始觉得无所谓,等做完一轮安全审计之后,全部文件协作工具换了血。

不要以为 OnlyOffice 只是个“低配版 Office”。它在协同办公这个垂直场景下的完成度,比很多同类开源项目高出一大截。最明显的一点是:它支持协作编辑的格式兼容度极其能打,大家平时用 Office 做的 .docx、.xlsx、.pptx 文件放上去,版式还原度非常高。不是说偶尔能用,而是我们团队内部测试过几十份复杂格式文档,真正常见格式错乱的场景几乎看不到。

1.2 同为协作办公方案,它的差异化优势在哪

我把目前市面上常见的方案分成了三类。第一类是纯云端订阅,比如 Office 365 和 Google Docs,体验好,但按月付费且数据不在自己手里。第二类是开源协作套件,但不做桌面级格式兼容,适合简单笔记和轻量协作,做一些复杂文档排版时会让人抓狂。第三类就是自托管完整办公套件,OnlyOffice 在这个赛道上几乎是独一份的存在。

是不是有点抽象?我举个例子你就懂了。之前有个做标书的团队,每次投标准备材料都要几十个文档来回传。之前他们用在线协作文本工具,几十页带目录、图表、页眉页脚的标书模板放进去,格式直接崩掉。后来折腾了一套 OnlyOffice,兼容性立刻立起来了,多人同时编辑一个几百页的文档,居然能做到不卡、不锁死、不互相覆盖。

再看协同能力本身。OnlyOffice 的实时协同编辑走的是操作转换的算法路线,意味着多人同时改同一段落也不会互相踩踏。哪怕你网络稍有波动,断线重连之后改动依然能同步回来,不会出现两个人各改一半最后只能手动合并的尴尬情况。这一点我在实际使用中测过多轮,表现相当稳定。

还有集成能力。OnlyOffice 官方提供了和 Nextcloud、ownCloud、Alfresco、Confluence 等系统的集成方案,尤其是 Docker 部署之后,顺带给 Nextcloud 挂上在线编辑功能,基本能把散落各处的文档串成一个统一入口。这已经不单单是一个编辑器了,而是一个协作基础设施。

1.3 开源协议与自主可控的另一层含义

OnlyOffice 的核心代码在 GitHub 上是公开的,社区版遵循 AGPLv3 协议。这件事的影响远不止“我能看到代码”,更深层的是:你的这套文件协作系统不会被某个商业公司的战略调整而绑架。举个例子,有的云笔记软件说关停就关停,你多年积累的写作内容导出都费劲。但 OnlyOffice 社区版不存在这个问题,哪怕官方项目停滞了,代码是公开的,总有人能接棒继续维护。

当然,AGPLv3 也有它的“坑”。如果你基于 OnlyOffice 源码修改并对外提供网络服务,你就必须把修改后的源码开放给用户。这一点很多商业公司容易踩雷。所以一般企业直接用社区版不修改,或者购买商业授权,反而是更稳妥的路径。

我还要提一个很多人忽略的细节:OnlyOffice 的文档格式兼容不只是“能打开不报错”,它会尽力还原批注、修订、公式、图表联动这类高难度特性。因为其底层直接支持 Office Open XML 格式,在保存为 .docx 之后再次用 Office 打开,你几乎察觉不到经过了在线编辑器的手。这个“完整性”是所有办公套件最硬的门槛。

2. 从下载到部署:绕过那些让你满头问号的安装坑

2.1 官方下载与版本选择的正解

我猜很多人第一次搜索“onlyoffice server 下载地址”的时候,会被一堆第三方镜像和远古版本链接搞得不知所措。我只推荐一条路:直接走官网的下载入口,选好操作系统架构之后拿到对应的安装包或 Docker 镜像。

需要注意,OnlyOffice 的版本分两条线:一条是社区版,全部功能免费,可以无限制使用;另一条是企业版,加了集群、单点登录、审计报告、白标等功能模块。很多人一开始以为社区版只是阉割版,其实核心的文档编辑能力一点都不缺。除非你的用户规模大到单节点撑不住,否则社区版完全够用。

选版本的同时,还要考虑部署形态。OnlyOffice 提供了 Linux 安装脚本、Windows 安装包、Docker 镜像、以及预置虚拟机镜像。我自己强烈建议用 Docker 部署,不是因为别的,而是省去了大量环境依赖的麻烦事。你不需要自己装 PostgreSQL、RabbitMQ、Redis,镜像里都给你编排好了,一条命令就能把整套服务拉起来。

不过这里有个细节坑:如果你用 Docker Compose 部署,不要想当然地认为虚拟机上把镜像拉下来就完事了。OnlyOffice 的容器编排包含多个服务,需要预留至少 4GB 内存和双核以上的 CPU。我们用默认配置在 2G 内存的轻量服务器上跑过一个测试实例,打开一个像样的 Excel 文件直接卡成幻灯片。

2.2 Docker 部署的完整流程与配置参数

为了让你少踩坑,我把一套稳妥到几乎不会出错的部署流程写在这。以下步骤基于 Ubuntu 22.04 和 Docker Compose v2,核心命令其实就十几行。

注意:部署前确认你的服务器已经安装 Docker 和 Docker Compose。不要用 Docker 圆滑的旧版本,因为新版 Compose 命令语法不同,老教程里的 docker-compose up 和现在的 docker compose up 容易让人当场懵住。

先创建目录和配置文件:

BASH
mkdir -p /opt/onlyoffice && cd /opt/onlyoffice

然后新建一个 docker-compose.yml,把下面的内容放进去:

YAML
version: '3'
 
services:
onlyoffice-document-server:
image: onlyoffice/documentserver:latest
container_name: onlyoffice-document-server
restart: always
ports:
- "8080:80"
- "443:443"
environment:
- JWT_ENABLED=true
- JWT_SECRET=your-strong-random-secret-string
volumes:
- ./data/logs:/var/log/onlyoffice
- ./data/data:/var/www/onlyoffice/Data
- ./data/lib:/var/lib/onlyoffice
- ./data/db:/var/lib/postgresql
- ./data/redis:/var/lib/redis
- ./data/cache:/var/lib/onlyoffice/documentserver/App_Data/cache

这里要注意几个关键参数。JWT_ENABLED 和 JWT_SECRET 要一起设置。如果开了 JWT 但不设置 secret,或者设置了但和你的集成方(比如 Nextcloud)不一致,文档编辑器就会一直报“无法保存”或“下载失败”这类错误。所谓 JWT,你可以理解成一种身份牌,只有持有正确密钥的服务才能调用 OnlyOffice 的编辑接口,防止别人白嫖你的服务器资源。

ports 映射这块,我只把宿主机的 8080 映射到容器内 80 端口用于 HTTP 访问,443 用于 HTTPS。生产环境建议前面再套一层 Nginx 或者 Caddy,用反向代理来管理证书,而不要把容器直接裸奔在公网。

到这里,启动命令就两行:

BASH
docker compose pull
docker compose up -d

第一次启动会比较慢,因为要初始化数据库和缓存。你可以用 docker compose logs -f 跟踪日志,等出现 PostgreSQL is ready 和 document-server started 之类的关键字,就说明服务起来了。

2.3 初次验证与浏览器端配置

服务起来之后,直接在浏览器访问 http://你的服务器IP:8080,能看到一个欢迎页面,说明部署成功。但别高兴太早,这只是 Default 路径。真正要进入管理后台,需要访问 /documentserver/ 或直接通过 API 调用才能看到编辑界面。

如果你是搭配 Nextcloud 使用,登录 Nextcloud 管理后台,找到“仅Office”对应的应用设置,填入 OnlyOffice 服务器地址,再填入之前设置好的 JWT 密钥,两边才算握手成功。这个“握手”概念很关键,它决定了文档服务是否信任你的 Nextcloud 发出的编辑和保存请求。

这里就牵扯出一个非常常见的“onlyoffice安装问题”:很多人卡在“保存失败”这个提示上。原因九成是 JWT 密钥没配对的话,剩下的可能是回环地址问题——文档服务器内部需要能访问到你 Nextcloud 的地址,才能拉取文档内容。如果你 Nextcloud 部署在同一台服务器上,不要写 localhost,要写你的内网 IP 或域名,否则容器间互相访问不通。

我建议大家在验证阶段做三件事:

  • 新建一个空文档,看编辑器是否正常加载;
  • 输入中文和常见 office 格式内容,保存为 .docx,下载后用本地 Office 打开检查格式;
  • 开两个浏览器分别登录不同账号,同时编辑同一个文档,看协同是否实时。

这套验证流程走下来,基本能确定你的部署是可用的还是“看起来可用但一动就崩”。

2.4 关于 HTTPS 与反向代理的经验补充

如果你的 OnlyOffice 是通过 HTTP 对外提供服务,而 Nextcloud 用 HTTPS,那浏览器大概率会拦截混合内容,导致文档加载不出来。这就是另一个高频“onlyoffice安装问题”的根源。解决思路是把 OnlyOffice 也套进 HTTPS,统一协议。

你可以用 Caddy 自动申请证书,也可以手动签发证书放到 Nginx 配置里。关键是要让 OnlyOffice 知道它对外暴露的地址是 HTTPS,这里需要调整 Docker 容器内的配置文件,或者直接用环境变量指定:

YAML
environment:
- ONLYOFFICE_HTTPS_ENABLED=true
- ONLYOFFICE_HTTPS_CERTIFICATE=/etc/ssl/onlyoffice/cert.pem
- ONLYOFFICE_HTTPS_KEY=/etc/ssl/onlyoffice/key.pem

当然,如果用反向代理终结 TLS,你完全可以让容器内部保持 HTTP,只要代理层正确转发 X-Forwarded-* 请求头即可。注意 OnlyOffice 对代理转发的某些头特别敏感,比如 X-Forwarded-Proto,没配对会导致它误判当前请求是内网还是外网,进而抛出地址不一致的报错。

3. 安装完不等于能用:性能和兼容性的深层调优

很多人的 OnlyOffice 装好了,打开小文档也没问题,但一旦文档稍微复杂一点,或者多人同时操作,就开始闹脾气。这背后的原因多半不是软件本身不行,而是你没给它一个合理的运行环境。

3.1 硬件配置的底线和推荐值

我直接给你一张基于实际经验的参考表:

并发用户数 CPU 内存 存储
1-10 2 核 4 GB HDD 可接受
10-50 4 核 8 GB SSD 强烈建议
50-200 8 核 16 GB+ SSD + 定时备份

你可能会觉得这个要求有点高,但注意,OnlyOffice 文档服务是基于 Node.js 的,每个文档编辑会话都会占用一定的进程资源。一个 20 人左右的团队,如果集中在上班时间同时编辑文档,在 2 核 4GB 的机器上运行,内存经常会逼近极限。我测过一次,光容器内的 PostgreSQL 和 Redis 就要吃 1GB 左右,剩余空间留给文档服务的真的不多。

另外,磁盘 I/O 对 OnlyOffice 的影响被严重低估。文档实时保存时,每个改动都要写数据库、写缓存、可能要落盘,机械硬盘的随机读写速度会成为明显瓶颈。尤其是多人同时编辑同一份大型表格时,如果你用的是 HDD,大概率会出现“编辑器半天转圈”的现象。所以只要条件允许,尽量给这块服务配 SSD。

3.2 字体缺失与中文排版问题

“onlyoffice安装问题”里还有一个高频场景:打开文档,英文字体正常,但中文字体全部变成方框或默认字体。这就说明你的服务器上没装完整的中文字体包。OnlyOffice 默认镜像只带了一些基础字体,对中文支持并不完整。解决方式也不难,在 Linux 服务器上安装中文字体,然后重启容器:

BASH
apt update && apt install -y fonts-wqy-zenhei fonts-wqy-microhei

安装之后,进入容器,把字体目录挂载好,让文档服务重新加载字体缓存:

BASH
docker exec onlyoffice-document-server fc-cache -fv

这个命令会刷新系统字体缓存。操作完再试一次文档预览,中文应该就正常了。千万不要跳过这一步,否则等你在 Nextcloud 里打开一份含中文的合同或方案,满屏幕的乱码真的会让人心态爆炸。

还有一点是关于段落排版的。有时你本地 Office 里排得整整齐齐的行距、缩进,拿到 OnlyOffice 里会稍微偏移。这不是 OnlyOffice 在格式转换上偷懒,而是字体度量差异导致的视觉变化。因为服务器渲染字体和本地 Office 自带字体不是同一套,行高和字符宽度会有细微差别。处理思路是在服务器上尽可能安装与用户本地相同版本的中文字体,很多团队会直接把 Windows 的 simsun.ttf、microsoft yahei.ttf 文件复制到服务器字体目录。这个方法有效,但要注意版权,建议优先用开源中文字体。

3.3 与 Nextcloud 集成时的一些关键参数

用 OnlyOffice 的人,绝大多数都背靠 Nextcloud。因为 Nextcloud 提供文件存储、用户管理、分享链接,OnlyOffice 补上编辑能力,两者是绝配。集成时最容易出问题的几个点,我先列在这:

  • onlyoffice 应用的服务器地址填写要精确到 http://IP:8080,不要加多余路径;
  • 密钥要和 OnlyOffice 容器环境变量中的 JWT_SECRET 完全一致;
  • Nextcloud 所在服务器要能访问 OnlyOffice 所在服务器的地址,反之亦然;
  • 如果你开了 Nextcloud 的主机信任限制,要把 OnlyOffice 的 IP 加进去。

这几条看着简单,但实际操作时“地址写错一位”“密钥多复制了一个空格”这类问题,排查起来真的要命。所以我建议你一把操配置完之后,先看 OnlyOffice 容器日志,里面会直接显示出它尝试访问 Nextcloud 时收到的状态码。403 说明密钥不对,404 说明地址不对,502 说明网络不通,直接对症下药。

3.4 做好备份与恢复策略

自托管最怕的就是数据丢失。OnlyOffice 所有文档的实际存储位置取决于集成方,如果你用的是 Nextcloud,文件本体在 Nextcloud 的数据目录里,那备份你的 Nextcloud 即可。但 OnlyOffice 自身还有数据库和缓存数据,里面存储了文档编辑过程中的临时状态和版本历史。

最稳妥的做法是:每天对宿主机上的 ./data 目录做一次完整快照,备份到异地存储。如果系统不大,可以直接用 rsync 同步到另一台服务器。恢复时把整个快照放回原路径,重新启动容器即可。不要只备份容器而忽略数据卷,容器本身随时可以重建,数据卷里的内容才是不可替代的。

还有一个容易被忽略的点:数据库表结构会随着版本升级而变动。如果你从旧版本升级到新版本,直接拉取新镜像启动,可能会遇到数据库版本不兼容的报错。官方文档给出的升级路径是从旧版本先更新到中间版本,再更新到新的。这一点务必在升级之前查清楚,别手一抖就 docker compose pull && up -d,然后瞪着一屏幕错误日志发呆。

4. 部署过程中实际遇到的常见问题排查实录

这段时间接触了不少社区里的问题反馈,我从中挑几个高频且具有代表性的“onlyoffice安装问题”,把完整的排查思路写出来,方便你按图索骥。

4.1 打开文档一直转圈,始终加载不出来

这个问题出现频率最高,原因也比较多样。第一优先排查的是网络连通性,这不是指服务器能不能上网,而是用户浏览器能否直接访问到 OnlyOffice 服务。如果你用自定义域名部署,却没把域名解析到服务器,就会出现编辑器框架加载了、文档本体却拉不回来的情况。

第二优先排查的是跨域设置。浏览器在加载 OnlyOffice 文档时会向文档服务器发起跨域 AJAX 请求,如果你的服务没正确配置 CORS,浏览器会静默拦截,表现出来的现象就是一直转圈。你需要确认 OnlyOffice 的配置文件里允许来自 Nextcloud 域名的跨域请求。一般情况下,官方镜像默认允许所有来源,但如果你的反向代理层过滤了 OPTIONS 请求,就会把跨域预检打断。

第三优先排查的是证书问题。如果 OnlyOffice 用的是自签名证书,而你要集成的 Nextcloud 用的是正式证书,浏览器可能不信任文档服务器的证书。最简单的方式是让 OnlyOffice 和 Nextcloud 共用同一域名下的证书,或者直接在浏览器高级选项里信任该证书,但这只适合测试环境。

4.2 编辑后保存失败,提示服务不可用或权限不足

保存动作实际上是把编辑后的文档内容传回后端。这里最典型的一个原因是 JWT 密钥不一致。如果 Nextcloud 端配置的密钥和 OnlyOffice 容器环境变量不一致,后端处理保存请求时就无法通过安全校验,直接返回 401 或 403。

还有一种情况:Nextcloud 应用通过 localhost 访问 OnlyOffice,但 OnlyOffice 回传保存请求时却使用外部地址访问 Nextcloud,地址不匹配导致请求被 Nextcloud 拒绝。解决方法是在 Nextcloud 的 config.php 中把 trusted_domains 配置好,让两种访问方式都在可信任名单里。

再有一种偏门原因:文档被其他用户锁定编辑,或者当前用户对目标文件只有阅读权限。这些情况在提示里通常会写明,但很多人不看仔细就直接来问为什么保存失败。我建议大家碰到保存失败,先看浏览器控制台的错误信息,再去看容器日志,不要凭感觉去改配置。

4.3 编辑器能打开,但标点和中文乱码

前面提到过字体缺失,这里再补充一个细节:不光是中文字体,一些特殊符号字体也可能缺失,导致特殊标点或公式显示成占位方块。最直接的排查方式是进入容器执行 fc-list 查看已安装字体,如果缺少特定字体,用 fc-list :lang=zh 查看中文族字体是否存在。

有时候字体没问题,但文档本身指定了某个特定字体,而该字体在服务器上不存在。OnlyOffice 会尝试用默认字体替换,替换结果就不太好看。这种情况建议设置合理的默认字体,在官方配置里可以指定 fonts 路径,把团队常用的字体统一放进服务器,让渲染效果尽量贴近本地 Office。

4.4 内存持续飙高,服务被 OOM 杀死

OnlyOffice 是很吃内存的应用,尤其在打开大型演示文稿或表格时。如果容器直接重启,十有八九是 Linux 内核 OOM Killer 下手了。不要以为这只是个例,在实际运营中,我见过不少服务器因为交换空间不足导致数据库连接异常,连带 OnlyOffice 一起崩掉的案例。

方案有两条路:一是加物理内存,最省心;二是优化使用习惯,比如限制单个文档的编辑人数、提醒用户不要同时打开太多的超大文件。还有一个小技巧是把容器的 /var/log/onlyoffice 映射到宿主机的独立目录,并配合 logrotate 限制日志大小。因为默认情况下,容器内日志会无限增长,很多人的磁盘就是被日志撑爆的。

4.5 端口冲突与防火墙导致的访问异常

OnlyOffice 默认占用 80 和 443 端口,如果你在同一台服务器上部署了 Nginx 或其他 Web 服务,端口冲突几乎是必然的。我在 Ubuntu 上遇到过不止一次:Docker 容器报端口被占用,但 netstat 查不出具体是哪个进程。这时用 ss -lntp 查看 PID,再根据 PID 找进程信息,基本能定位到是 Nginx 还是别的服务。

防火墙方面,如果你用的是云服务器,记得在安全组里放行相应端口,包括宿主机映射的 8080 和 443。Cloudflare 等 CDN 如果也套了,还要注意访问来源 IP 变化导致鉴权失败的问题——这类问题排查起来很费时间,但定位到原理之后,解决其实几分钟。

5. 实际使用体验与场景适配建议

5.1 什么团队真正适合 OnlyOffice

最适合的群体是那些“不需要完整 Office 全家桶、但必须保证格式和权限可控”的中小团队。比如做咨询的、做设计外包的、做研发的,大量文档需要反复修改和留痕,但又没有精力和预算去维护大规模 Office 365 订阅。

其次适合的群体是已经部署了 Nextcloud 或类似私有云盘、希望无缝扩展在线文档编辑能力的用户。OnlyOffice 的定位在这里发挥得最好,你不需要额外引入一套账号体系,直接用 Nextcloud 的用户权限,文档权限、分享权限全都自动继承,用户体验是连贯的。

不太适合的场景也很明显,如果你所在企业深度依赖 Office 的宏功能、复杂动态公式或者高级表格透视,OnlyOffice 的兼容性再好也无法完全替代桌面 Office。这类需求你与其折腾 OnlyOffice,不如沿用老方案。

5.2 从项目实战中学到的几个执行要点

如果你准备在团队内部推 OnlyOffice,我建议分三步走。第一步,先搭一个小规模测试环境,让核心成员试用两周,收集格式兼容性反馈。第二步,根据反馈调整字体、模板和默认配置,把可能出现的乱码、排版偏移问题提前消化掉。第三步,再逐步把存量文档迁移到新系统,并制定备份方案和升级计划。

我在实际项目中踩过最大的坑,就是一开始没做足够多的格式兼容性测试,结果老板转了一圈文档,发现自己最常用的一个合同模板排版全乱了。后来我们把所有高频使用的模板全部放进测试环境过了一遍,针对具体问题逐一修复,正式切换后几乎没再收到过格式问题。

另一点值得注意的是,在线编辑器和桌面 Office 的差异,不能指望所有用户都轻松接受。有些人习惯了本地编辑保存之后再上传,对于在线协同时刻都在保存的模式反而会感到不安。这时候需要给团队做简单的培训,把协作逻辑讲清楚,让大家明白改动即时同步,权限控制到位,并不会出现“我改了别人还不知道”的问题。

5.3 轻量级替代与扩展玩法

其实 OnlyOffice 不只是可以配合 Nextcloud 使用,你也可以单独部署一个公共服务,给企业内所有人提供一个网页版 Office 入口。只要服务器资源充足,你甚至可以用它来搭建一个带文档在线编辑功能的内部知识库,或者跟表单工具结合,做审批流里的附件在线预览。

我用过一套很有意思的方案:在群晖 NAS 上用 Docker 跑 OnlyOffice,内网所有同事通过同一个入口打开文档,直接用 NAS 账号做认证,权限统一在 NAS 上管理。既不用额外维护用户系统,又能让同事在线协作,数据全部留在自己的存储上,安全性拉满。

这个方案成本极低,一台普通 NAS 加一个 Docker 容器就搞定了。而且群晖有现成的 Docker 管理界面,不用命令行也能完成部署。如果你手头刚好有 NAS,强烈建议试一下这个组合。

5.4 聊聊未来可能的演进方向

Document Server 这块,OnlyOffice 近几个大版本主要精力都花在性能和兼容性上,每隔一段时间就能看到它对某类 Office 格式的修复记录。可以预见的是,在线协同办公的接受度会越来越高,自托管作为混合办公基础设施的一部分,也会继续在特定行业里拓展空间。

不管你是被这个词的热度吸引来的,还是已经准备部署了,我都建议先用一个小项目验证它是否适合你的使用场景。OnlyOffice 的优点很明显,但它毕竟不是银弹,搞清楚自己的底线需求,再决定怎么用它,才是正确打开方式。

相关推荐

基于Python+Open CV的手势识别算法设计

伴随着人工智能时代的到来,人机交互的领域也逐渐成为研究的一大方向;其中,手势识别是人机交互领域的一项关键技术,自此手势识别也迎来了一波高潮,近几年无论是在消费领域、电子领域、数码领域、家电领域甚至汽车领域上,都能或多或少的见到手势识别的身影。 手势识别在设计智能高效的人机界面方面具有至关重要的作用, 目前手势识别已应用到手语识别、智能监控、到虚拟现实等各个领域,手势识别的原理都是利用各种传感器(例如红外、摄像头等)对手部的形态进行捕捉并进行建模,形成一个模型信息的序列帧,而后将这些信息序列转换为机器能够识别的相对应指令(例如打开、切换菜单、移动等)来完成控制。 采用Python的集成开发环境Pycharm进行本次课程设计,在Pycharm中进行需要库(模块)的下载,调取电脑摄像头,按帧读取摄像头采集到的头像,形态学处理,图像旋转(由于摄像头采集到的图像是镜像,需要用cv2.flip将摄像头采集到的图像进行处理),选取图片中固定位置作为手势输入,用红线画出手势识别框,基于hsv的肤色检测,进行高斯滤波,找出轮廓,求出图像中手势的凹凸点,手指间角度求取。

努力学习前端的小陈

ROS-CV-ImageConverter:将ROS图像转换为OpenCV(cv :: Mat)类型的图像

ROS-CV图像转换器 依存关系 cv_bridge(ROS软件包)

Willis Wang

计算机视觉图像处理-CV2与图像插值算法

用最近邻插值与双线性插值原理完成图像缩放 最近邻插值,是指将目标图像中的点,对应到源图像中后,找到最相邻的整数点,作为插值后的输。缺点:使用最近邻插值算法处理图像放大时,在图象中可能出现明显的块状效应 双线性插值,在两个方向上做三次线性插值。使用双线性插值算法处理图像放大时,在图象中可能出现马赛克 代码 import cv2 img = cv2.imread(’./xiabang.jpg’, cv2.IMREAD_UNCHANGED) #缩放比例 scale_percent = 0.3 width = int(img.shape[1] * scale_percent) height = int

weixin_38697274

基于水平集CV模型的图像分割(Matlab代码)

基于水平集CV模型的图像分割(Matlab代码),全套代码

小宇QAQ

导向滤波(guide_filter)的python实现

导向滤波(guide_filter)的python实现,可以结合暗通道;理论实现比较好的图像去噪效果。

zachzhan_g
返回顶部
王少冬
博客等级 码龄8年 54粉丝 8,066原创