每次PC重启都要启动docker,顺便要映射onlyoffice的server
systemctl start docker sudo docker run -i -t -d -p 9000:80 onlyoffice/documentserver
推荐服务器配置
既然官方文档有说,那就贴在下面吧。
配置方面还是尽量满足吧,实测会消耗很多资源,小内存VPS根本扛不住。
- RAM: 4 GB+
- CPU: 双核 2 GHz +
- Swap: 至少2 GB
- HDD: 至少有2GB的剩余空间
- 系统要求: RedHat 64bit,CentOS类、Debian类的内核版本3.8以上。
- Docker: 1.9.0版本及以上
uname -r
安装Docker
CentOS/RedHat/Fedora
使用yum命令安装Docker:yum install docker -y启动Docker服务:
systemctl start docker
Debian/Ubuntu
使用apt命令安装Docker:sudo apt-get install docker.ioDocker服务会自动启动。
拉取ONLYOFFICE Document Server 的Docker镜像
拉取镜像:sudo docker pull onlyoffice/documentserver


启动Docker容器
启动Document Server镜像,并映射80端口至本地。sudo docker run -i -t -d -p 80:80 onlyoffice/documentserver


将Document Server映射至其它端口
80端口上往往会运行像Apache、Nginx之类的HTTP服务,为了避免端口冲突,我们可以将Document Server映射至其它端口。 例如映射至9000端口:sudo docker run -i -t -d -p 9000:80 onlyoffice/documentserver

一些说明……
Document Server的数据在容器中的储存位置如下:- /var/log/onlyoffice 存放ONLYOFFICE Document Server日志
- /var/www/onlyoffice/Data 存放证书文件
sudo docker -exec -it onlyoffice/documentserver /bin/bash登入容器,也可以将以上两个目录映射到本地,这样更方便。 创建目录:
mkdir -p /app/onlyoffice/DocumentServer/logs mkdir -p /app/onlyoffice/DocumentServer/data使用
docker -v将目录映射至本地:
sudo docker run -i -t -d -p 80:80 \ -v /app/onlyoffice/DocumentServer/logs:/var/log/onlyoffice \ -v /app/onlyoffice/DocumentServer/data:/var/www/onlyoffice/Data onlyoffice/documentserver这样,直接访问本地的
/app/onlyoffice/DocumentServer/下的两个文件夹就可以了。
启用HTTPS
HTTPS需要使用SSL证书,可以自己签发也可以用ca机构签发的,加密效果相同。 生成证书:- 创建私钥
openssl genrsa -out onlyoffice.key 2048
- 创建CSR
openssl req -new -key onlyoffice.key -out onlyoffice.csr
- 用私枂和CSR签发证书
openssl x509 -req -days 365 -in onlyoffice.csr -signkey onlyoffice.key -out onlyoffice.crt
- 用dhparam加密服务器密钥
openssl dhparam -out dhparam.pem 2048
/app/onlyoffice/DocumentServer/data/certs目录下。 创建相应目录:
mkdir -p /app/onlyoffice/DocumentServer/data/certs复制证书到
/app/onlyoffice/DocumentServer/data/certs目录并设置权限:
cp onlyoffice.key /app/onlyoffice/DocumentServer/data/certs/ cp onlyoffice.crt /app/onlyoffice/DocumentServer/data/certs/ cp dhparam.pem /app/onlyoffice/DocumentServer/data/certs/ chmod 400 /app/onlyoffice/DocumentServer/data/certs/onlyoffice.key运行容器,映射容器的443端口和Data目录至本地:
sudo docker run -i -t -d -p 443:443 \ -v /app/onlyoffice/DocumentServer/data:/var/www/onlyoffice/Data onlyoffice/documentserver


sudo docker run -i -t -d -p 9000:443 \ -v /app/onlyoffice/DocumentServer/data:/var/www/onlyoffice/Data onlyoffice/documentserver但是仍然是要用HTTPS协议访问,比如:https://服务器地址:9000/
CentOS/RHEL/Fedora无法访问
这是由于SELinux的阻止。 暂时关闭SELinux(重启后失效):setenforce 0
