Seafile 专业版服务器支持在线预览 office 文件,配置方法如下。
Office 预览依赖于 Libreoffice 4.1+ 和 Python-uno 库。
Ubuntu/Debian
sudo apt-get install libreoffice libreoffice-script-provider-python libsm-dev
CentOS: 需要安装比较新的版本
1.卸载系统当前的libreoffice:
yum remove --setopt=clean_requirements_on_remove=0 libreoffice-*
2.获取rpm文件:
http://mirrors.ustc.edu.cn/tdf/libreoffice/stable
选择 6.4.0 (若有更新的版本,请选择最新的版本)
选择 rpm
选择 x86_64
选择 LibreOffice_6.4.0_Linux_x86-64_rpm.tar.gz
3.安装
mkdir /usr/libreoffice
tar -zxvf LibreOffice_6.4.0_Linux_x86-64_rpm.tar.gz -C /usr/libreoffice/
进入到解压后的RPMS目录,运行命令:
yum localinstall *.rpm
yum install -y libSM-devel
你还需要安装字体文件:
Ubuntu/Debian:
# For ubuntu/debian
sudo apt-get install ttf-wqy-microhei ttf-wqy-zenhei xfonts-wqy
CentOS:
# For CentOS
sudo yum install wqy-microhei-fonts wqy-zenhei-fonts wqy-unibit-fonts -y
打开 conf/seafevents.conf
,添加:
[OFFICE CONVERTER]
enabled = true
host = 127.0.0.1 # 本机的IP地址,默认 127.0.0.1
port = 6000 # 端口,默认6000
打开conf/seahub_settings.py
,添加:
OFFICE_CONVERTOR_ROOT = 'http://127.0.0.1:6000/' # 与seafevents.conf中的 host 和 port 保持一致
保存 seafevents.conf
与seahub_settings.py
后,重启 Seafile 服务 ./seafile.sh restart
[OFFICE CONVERTER]
## 并发运行 libreoffice 的进程数
workers = 1
## 转换后的 office/pdf 文件的缓存路径。默认是 /tmp/.
outputdir = /tmp/
9.0 及以后版本需要对接镜像 office,所以用户需要提前安装好 docker-compose。office-preview 服务需要与Seafile服务部署在同一节点上。
下载URL : docker-compose.yml
version: '3.0'
services:
office-preview:
image: seafileltd/office-preview:latest
container_name: seafile-office-preview
ports:
- "192.x.x.x:8089:8089" # 192.x.x.x是宿主机的IP地址
command: bash start.sh
volumes:
- /opt/office-preview/shared:/shared # 宿主机路径可以自定义
启动 office 容器
docker-compose up -d
启动容器后,需要手动在宿主机添加配置文件 /opt/office-preview/shared/office_convertor_settings.py
# 和 seafile 的 seahub_settings.py 里的 SECRET_KEY 保持一致
SECRET_KEY = "o@^yktib39k+oor2_busbcxqaach_$b5zq-)4l6l39v#8ky5ta"
WORKERS = 10 # worker 数
OUTPUT_DIR = '/shared/output' # 输出目录,容器内目录
PORT = 8089 # 服务端口,容器内端口,非映射到外部的端口
添加配置后,需要重启一下 office 镜像,使 office_convertor_settings.py 配置文件生效
docker restart seafile-office-preview
在 seahub_settings.py 添加下列配置以便调用 Office 预览服务
OFFICE_CONVERTOR_ROOT = 'http://192.x.x.x:8089' # 192.x.x.x是部署office-preview的宿主机的IP地址
重启 Seafile 使配置文件生效
Last modified by lian-name, 2024-03-20