安装docker
sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine #卸载旧版本
sudo yum install -y yum-utils #安装yum-utils软件包
sudo pip3 install runlike #此软件可查看docker run配置
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo #添加仓库
sudo yum install docker-ce docker-ce-cli containerd.io #安装DOCKER引擎
sudo systemctl start docker #启动
systemctl enable docker #开机启动
------
卸载Docker
## sudo yum remove docker-ce docker-ce-cli containerd.io
## sudo rm -rf /var/lib/docker
------
部署镜像
sudo docker pull onlyoffice/documentserver #拉取镜像
docker run -i -t -d -p 127.0.0.1:8088:80/tcp --name onlyoffice --restart=always onlyoffice/documentserver #启动80端口映射外部8088
docker logs -f onlyoffice #查看日志
[2021-02-02T04:54:29.104] [WARN] nodeJS - start cluster with 1 workers
[2021-02-02T04:54:29.115] [WARN] nodeJS - worker 945 started.
[2021-02-02T04:54:29.516] [WARN] nodeJS - Express server starting...
[2021-02-02T04:54:29.580] [WARN] nodeJS - Express server listening on port 8080 in production-linux mode
出现如上描述时,Ctrl+C 退出
配置代理https
由于需要使用https,docker内部添加外部证书没有通过。多方测试,发现可以通过nginx代理docker启动的8088端口来使用https.
vim /etc/nginx/conf.d/onlyoffice_ssl.conf #新建配置文件
##拷贝一下配置,注意修改证书路径
server {
listen 8443 ssl;
error_page 497 301 https://$http_host$request_uri;
ssl_certificate /etc/nginx/conf.d/cert/seafile802.pem;
ssl_certificate_key /etc/nginx/conf.d/cert/seafile802.key;
ssl_session_timeout 5m;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
location / {
proxy_pass http://127.0.0.1:8088;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header x-wiz-real-ip $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_set_header X-Forwarded-Proto $scheme;
client_max_body_size 1024M;
client_body_buffer_size 128M;
proxy_buffering off;
proxy_max_temp_file_size 128M;
}
}
systemctl restart nginx #重启nginx生效
https://域名:8443 访问测试
seafile调用
配置自动保存
docker exec -it onlyoffice /bin/bash #进入容器
nano /etc/onlyoffice/documentserver/local.json #在最后添加一下信息
"autoAssembly": {
"enable": true,
"interval": "5m"
},
如下图示位置
Ctrl+X #退出
y #保存
supervisorctl restart all #重启 OnlyOffice
exit #退出容器
seafile关联
vim /opt/seafile/conf/seahub_settings.py #在最后添加以下代码
ENABLE_ONLYOFFICE = True
VERIFY_ONLYOFFICE_CERTIFICATE = False
ONLYOFFICE_APIJS_URL = 'https://域名:8443/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')
重启seafile服务