当前位置: 首页 > article >正文

使用docker-compose单点搭建社区版seafile+onlyoffice在线word编辑平台

文章目录

  • 前言
  • 一、平台介绍
    • 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.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.运行平台

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文件进行在线编辑功能的确认
在这里插入图片描述

总结

非常好使的开源平台


http://www.kler.cn/a/394890.html

相关文章:

  • C#中 layout的用法
  • A3超级计算机虚拟机,为大型语言模型LLM和AIGC提供强大算力支持
  • sealos部署K8s,安装docker时master节点突然NotReady
  • docker构建jdk11
  • 【2024软考架构案例题】你知道 Es 的几种分词器吗?Standard、Simple、WhiteSpace、Keyword 四种分词器你知道吗?
  • React的基础API介绍(二)
  • 【FreeRL】MAPPO的简单复现
  • 《基于Oracle的SQL优化》读书笔记
  • Scrapy并发请求深度解析:如何高效控制爬虫速度
  • spring boot 集成 redis 实现缓存的完整的例子
  • D68【python 接口自动化学习】- python基础之数据库
  • Java 实现鼠标单击右键弹出菜单项
  • 【vue3中el-table表格高度自适应】
  • 探索 HTML 和 CSS 实现的 3D旋转相册
  • SQL面试题——蚂蚁SQL面试题 连续3天减少碳排放量不低于100的用户
  • c++写一个死锁并且自己解锁
  • 前端搭建低代码平台,微前端如何选型?
  • Android开发|关于LiveData、ViewModel、DataBinding理解和使用
  • UI架构解说
  • 智能量化交易的多样化策略与风险控制:中阳模型的应用与发展
  • 项目中用户数据获取遇到bug
  • 计算机课程管理:Spring Boot与工程认证的协同创新
  • Docker部署青龙面板,实现京东自动签到刷京东,提供脚本
  • 如何利用静态住宅IP提升TikTok营销效果:应对平台限制与账号安全的新利器
  • 理解HTTP中的Cookie与Session:机制、安全性与报头响应
  • 华为路由策略配置