最近在内网用 Docker 搭了一套 OnlyOffice 社区版,按通用模板跑起来很顺利,但新建文档点保存时直接弹框报错:The document could not be saved. 检查日志发现一条关键信息:DNS lookup 私有 IP 段 (如 192.168.x.x) is not allowed. Because, It is private IP address. 问题出在 OnlyOffice 默认的安全限制——禁止向私有 IP 发送回调请求,而测试示例正好会回调到宿主机的内网地址,导致保存流程中断。
基础部署
下面这份 docker-compose.yml 适合快速验证:
version: '3'
services:
onlyoffice-docs:
container_name: onlyoffice-docs
image: onlyoffice/documentserver:latest
ports:
- "19898:80"
restart: always
environment:
- TZ=Asia/Shanghai
- JWT_ENABLED=false
volumes:
- ./onlyoffice-logs:/var/log/onlyoffice
- ./onlyoffice-data:/var/www/onlyoffice/Data
- ./onlyoffice-lib:/var/lib/onlyoffice
- ./onlyoffice-db:/var/lib/postgresql
mkdir onlyoffice && cd onlyoffice
mkdir logs data lib db
docker-compose up -d
浏览器访问 http://你的服务器IP:19898 就能看到 OnlyOffice 欢迎页。
测试示例的奇怪报错
按官方指引启动内置示例:
docker exec 9a13fd45d2d6 sudo supervisorctl start ds:adminpanel
docker exec 9a13fd45d2d6 sudo sed -i /etc/supervisor/conf.d/ds-adminpanel.conf


