一个基于Collabora Online的完整文档编辑系统,支持MinIO文件访问、预览/编辑模式切换、全屏编辑等功能。
# 构建镜像
./docker/build.sh
# 运行容器
./docker/run.sh
# 启动Collabora容器
docker run -t -d -p 9980:9980 -e "aliasgroup1=https://localhost:5173" -e "username=admin" -e "password=admin" --cap-add MKNOD collabora/code
# 启动后端
cd backend && npm install && npm start
# 启动前端
cd frontend && npm install && npm run dev
http://localhost/app/office?file=YOUR_MINIO_URL
http://localhost/app/office?edit=true&file=YOUR_MINIO_URL
# 预览用户手册
http://localhost/app/office?file=http://shenben.club:9000/gaojiaqi/%E6%B5%99%E9%9F%B3%E9%AA%8C%E6%94%B6/10-%E7%94%A8%E6%88%B7%E6%89%8B%E5%86%8C.docx
# 编辑用户手册
http://localhost/app/office?edit=true&file=http://shenben.club:9000/gaojiaqi/%E6%B5%99%E9%9F%B3%E9%AA%8C%E6%94%B6/10-%E7%94%A8%E6%88%B7%E6%89%8B%E5%86%8C.docx
用户浏览器 ↓ HTTP/HTTPS Nginx (80/443) ↓ 代理 Vue前端 + Node后端 + Collabora Online ↓ HTTP下载 MinIO服务器
FROM collabora/code:latest # 安装Node.js和Nginx # 复制前端和后端代码 # 配置自动启动脚本
80: HTTP服务443: HTTPS服务9980: Collabora Online (内部)├── frontend/ # Vue前端 ├── backend/ # Node.js后端 ├── docker/ # Docker配置 ├── test/ # 测试脚本 ├── docs/ # 文档 └── Dockerfile # 主镜像配置
// 默认文档
GET /api/editor-url/:fileId?edit=true/false
// MinIO文件
GET /api/minio-editor-url?minio_url=xxx&edit=true/false
// 健康检查
GET /api/health
// 主页
/
// Office编辑器
/app/office?file=URL&edit=true/false
# 功能测试
cd test && node office-route-test.js
# 快速验证
cd test && node quick-verification.js
容器启动失败
docker logs document-editor
服务无法访问
# 检查端口占用
netstat -tlnp | grep :80
文件无法加载
# 查看容器状态
docker ps
# 查看服务日志
docker logs document-editor
# 进入容器调试
docker exec -it document-editor bash
✅ 所有需求已实现:
开发完成: 2025年9月3日
版本: v4.0.0 - 生产就绪版本
状态: 🟢 可立即部署使用
🚀 立即开始使用您的专业文档编辑系统!