文章目录
- 前言
- 一、平台介绍
-
- [1. seafile平台介绍](#1. seafile平台介绍)
- [2. onlyoffice平台介绍](#2. onlyoffice平台介绍)
- 二、版本信息
- 三、基础信息准备
- 四、onlyoffice部署
- 五、seafile平台部署
- 六、双平台对接
- 总结
前言
记录使用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
yaml
{
"dns": ["8.8.8.8"],
"exec-opts":["native.cgroupdriver=systemd"],
"log-driver":"json-file",
"log-opts":{
"max-size":"100m"
}
}
2.准备目录
shell
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命令启动
shell
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
yaml
services:
db:
image: mariadb:10.11
container_name: seafile-mysql
environment:
- MYSQL_ROOT_PASSWORD=db_dev
- MYSQL_LOG_CONSOLE=true
- MARIADB_AUTO_UPGRADE=1
volumes:
- /data/seafile/seafile-mysql/db:/var/lib/mysql
networks:
- seafile-net
memcached:
image: memcached:1.6.18
container_name: seafile-memcached
entrypoint: memcached -m 256
networks:
- seafile-net
seafile:
image: seafileltd/seafile-mc:11.0-latest
container_name: seafile
ports:
- "8097:80"
volumes:
- /data/seafile/seafile-data:/shared
environment:
- 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
- memcached
networks:
- seafile-net
networks:
seafile-net:
备注:SEAFILE_SERVER_HOSTNAME写你部署的机器的IP
2.运行平台
shell
docker-compose -f /data/seafile/seafile.yaml up -d
浏览器访问,进行验证:http://IP:8097/accounts/login/?next=/
六、双平台对接
两个平台部署没有问题,进行对接
配置文件中增加对接配置信息
/data/seafile/seafile-data/seafile/conf/seahub_settings.py
python
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
shell
docker-compose -f /data/seafile/seafile.yaml restart
打开office文件进行在线编辑功能的确认
总结
非常好使的开源平台