文章目录
- 前言
- 一、平台介绍
- 1. seafile平台介绍
- 2. onlyoffice平台介绍
- 二、版本信息
- 三、基础信息准备
- 1.docker配置文件
- 2.准备目录
- 四、onlyoffice部署
- 五、seafile平台部署
- 1.准备seafile.yaml文件
- 2.运行平台
- 六、双平台对接
- 总结
前言
记录使用docker-compose单点搭建社区版seafile+onlyoffice在线word编辑平台
一、平台介绍
1. seafile平台介绍
Seafile 是一款开源的企业云盘,注重可靠性和性能,支持全平台客户端。Seafile 内置协同文档 SeaDoc ,让协作撰写、管理和发布文档更便捷。
官网地址:https://www.seafile.com/home/
2. onlyoffice平台介绍
ONLYOFFICE 文档是一款强大的在线编辑器,为您使用的平台提供文本文档、电子表格、演示文稿、表单和 PDF 编辑工具
官网地址:https://www.onlyoffice.com/zh/
二、版本信息
操作系统:centos 7.9
docker环境:20.10.21
docekr-compose环境:1.29.2
onlyoffice版本:7.1.1
seafile版本:seafile-mc:11.0-latest
基础环境的部署可以参考之前的帖子
三、基础信息准备
1.docker配置文件
/etc/docker/daemon.json
{"dns": ["8.8.8.8"],"exec-opts":["native.cgroupdriver=systemd"],"log-driver":"json-file","log-opts":{"max-size":"100m"}
}
2.准备目录
mkdir -p /data/seafile/
mkdir -p /data/seafile/seafile-mysql/db
mkdir -p /data/seafile/seafile-data/
mkdir -p /data/seafile/seadoc-data/
touch /data/seafile/seafile.yaml
mkdir -p /data/seafile/onlyoffice/DocumentServer/logs
mkdir -p /data/seafile/onlyoffice/DocumentServer/data
touch /data/seafile/onlyoffice/start.txt
四、onlyoffice部署
使用docker run命令启动
docker run -d --name mydoc -p 8098:80 -e JWT_ENABLED=false -v /data/seafile/onlyoffice/DocumentServer/logs:/var/log/onlyoffice -v /data/seafile/onlyoffice/DocumentServer/data:/var/www/onlyoffice/Data onlyoffice/documentserver:7.1.1
等待一会后访问页面检查部署结果,如下图则表示部署成功
浏览器访问:http://IP:8098/welcome/
启动正常的话,把启动命令保存在/data/seafile/onlyoffice/start.txt文件中。(好记性不如烂笔头!!)
五、seafile平台部署
1.准备seafile.yaml文件
我这里由于是内网用,所以直接使用的http
services:db:image: mariadb:10.11container_name: seafile-mysqlenvironment:- MYSQL_ROOT_PASSWORD=db_dev- MYSQL_LOG_CONSOLE=true- MARIADB_AUTO_UPGRADE=1volumes:- /data/seafile/seafile-mysql/db:/var/lib/mysqlnetworks:- seafile-netmemcached:image: memcached:1.6.18container_name: seafile-memcachedentrypoint: memcached -m 256networks:- seafile-netseafile:image: seafileltd/seafile-mc:11.0-latestcontainer_name: seafileports:- "8097:80"volumes:- /data/seafile/seafile-data:/sharedenvironment:- DB_HOST=db- DB_ROOT_PASSWD=db_dev- TIME_ZONE=Asia/Shanghai- SEAFILE_ADMIN_EMAIL=admin@XXX.com # Specifies Seafile admin user, default is 'me@example.com'.- SEAFILE_ADMIN_PASSWORD=XXX@123456 # Specifies Seafile admin password, default is 'asecret'.- SEAFILE_SERVER_LETSENCRYPT=false # Whether use letsencrypt to generate cert.- SEAFILE_SERVER_HOSTNAME=XX.XXX.XXX.2 # Specifies your host name.depends_on:- db- memcachednetworks:- seafile-netnetworks:seafile-net:
备注:SEAFILE_SERVER_HOSTNAME写你部署的机器的IP
2.运行平台
docker-compose -f /data/seafile/seafile.yaml up -d
浏览器访问,进行验证:http://IP:8097/accounts/login/?next=/
六、双平台对接
两个平台部署没有问题,进行对接
配置文件中增加对接配置信息
/data/seafile/seafile-data/seafile/conf/seahub_settings.py
ENABLE_ONLYOFFICE = True
VERIFY_ONLYOFFICE_CERTIFICATE = False
ONLYOFFICE_APIJS_URL = 'http://IP:8098/web-apps/apps/api/documents/api.js'
ONLYOFFICE_FILE_EXTENSION = ('doc', 'docx', 'ppt', 'pptx', 'xls', 'xlsx', 'odt', 'fodt', 'odp', 'fodp', 'ods', 'fods')
ONLYOFFICE_EDIT_FILE_EXTENSION = ('docx', 'pptx', 'xlsx')
ONLYOFFICE_JWT_SECRET = 'your-secret-string'
增加之后,重启seafile
docker-compose -f /data/seafile/seafile.yaml restart
打开office文件进行在线编辑功能的确认
总结
非常好使的开源平台