内置 Office 文件预览配置方法

Seafile 专业版服务器支持在线预览 office 文件,配置方法如下。

7.1~8.0 版本

安装 Libreoffice/UNO

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.confseahub_settings.py后,重启 Seafile 服务 ./seafile.sh restart

其他配置选项

[OFFICE CONVERTER]
## 并发运行 libreoffice 的进程数
workers = 1
## 转换后的 office/pdf 文件的缓存路径。默认是 /tmp/.
outputdir = /tmp/

9.0~10.0 版本

9.0 及以后版本需要对接镜像 office,所以用户需要提前安装好 docker-compose。office-preview 服务需要与Seafile服务部署在同一节点上。

下载并修改 docker-compose.yml 文件

下载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
修改 Seafile 的 seahub_settings.py 配置文件

在 seahub_settings.py 添加下列配置以便调用 Office 预览服务

OFFICE_CONVERTOR_ROOT = 'http://192.x.x.x:8089'   # 192.x.x.x是部署office-preview的宿主机的IP地址

重启 Seafile 使配置文件生效

11.0 版本开始,office preview 组件不再更新

Last modified by lian-name, 2024-03-20

7.1~8.0 版本
安装 Libreoffice/UNO
开启配置项
其他配置选项
9.0~10.0 版本
11.0 版本开始,office preview 组件不再更新