原文同步自作者博客:https://www.daxueyiwu.com/post/765
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
在瀏覽器里訪問https://服務器地址/。(CentOS/RHEL/Fedora系統可能無法訪問,請往下看)
當然了,如果本地443端口已經被占用了的話,可以映射至其它端口:
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
參考:
https://blog.csdn.net/qq_33468857/article/details/85333593
https://hub.docker.com/r/onlyoffice/documentserver
有需要可以加群交流:點擊鏈接加入群聊【onlyoffice交流群】:https://jq.qq.com/?_wv=1027&k=ozgBiZts
1群將滿可加2群【onlyoffice交流群2】:https://jq.qq.com/?_wv=1027&k=2uSJJPfr