Linux安装nextCloud + Collabora Online 在线编辑(最新)
nextCloud:一款开源的私有网盘系统,配合 Collabora Online 可以实现 word、excel、等文档文件的在线编辑功能。
本文采用Docker的安装方法,具体操作步骤如下:
安装Docker并配置镜像源
参考我的另一篇文章:
安装nextCloud
请确保你已经安装了Docker,并配置了可以的镜像源。
MYSQL_HOST:记得换成自己的Mysql地址
MYSQL_USER:换成自己的MySQL用户名
MYSQL_PASSWORD:换成自己的MySQL密码
-v 外部文件挂在地址:/var/www/html
:外部文件挂载地址换成自己的,后面的 /var/www/html 不要动
- p 暴漏的端口:80
:把要暴漏的(访问nextCloud)的端口换成自己的,后面的80端口
不要动
docker run -d \
--name nextcloud \
-v /mydata/nextcloud/data:/var/www/html \
-e MYSQL_HOST=10.179.85.122:3306 \
-e MYSQL_DATABASE=nextcloud \
-e MYSQL_USER=root \
-e MYSQL_PASSWORD="123456" \
-p 10001:80 \
nextcloud
下载安装完成后访问:http://10.179.85.122:10001/
即可访问nextCloud(记得把 IP、端口换成你自己的)
初次启动会让你配置管理员账号密码,自己配置即可。然后点击安装。
推荐的应用跳过即可
跳出如下界面说明安装完成:
接下来我们配置一下语言和时区:
至此,nextCloud就安装好了,其他的创建用户等功能都可以通过点击右上角自己的头像去配置,此处不加以赘述。
安装nginx
在安装 Collabora Online 之前,需要先安装nginx帮助我做路径代理。由于个人认为 docker安装nginx比较麻烦,此处选择采用 源代码安装
安装nginx依赖:
sudo apt-get update && sudo apt-get install -y g++ libpcre3 libpcre3-dev zlib1g zlib1g-dev openssl libssl-dev
sudo apt update && sudo apt install -y build-essential
下载nginx:
wget http://nginx.org/download/nginx-1.25.1.tar.gz
解压下载的nginx:
tar -zxf nginx-1.25.1.tar.gz
进入解压好的nginx目录,准备安装:
cd nginx-1.25.1
配置nginx:
./configure
编译安装nginx:
make&&make install
安装完毕后,默认会在:/usr/local/nginx
目录下有文件,我们测试一下nginx是否安装成功并启动:
cd /usr/local/nginx/sbin
./nginx #启动
直接通过ip地址(服务器ip)+端口号(默认80)访问。出现如下内容说明安装成功
配置项内容我们接下来再配置
安装Collabora Online并使用HTTP协议
使用docker安装 Collabora Online
-e "domain=白名单IP1|白名单IP2|..."
:白名单主要配置 nextcloud的IP,使nextCloud可以访问 Collabora Online
-e "extra_params=--o:ssl.enable=false"
:配置使用HTTP协议,默认情况下 Collabora Online 必须使用HTTPS协议
-e "username=admin"
:Collabora的账号(登录验证时会用到)
-e "password=123"
:Collabora的密码(登录验证时会用到)
docker run -t -d -p 9980:9980 \
-e "domain=10\.179\.85\.14|10\.179\.86\.78" \
-e "extra_params=--o:ssl.enable=false" \
-e "username=admin" \
-e "password=123" \
--restart always \
--cap-add MKNOD \
collabora/code
nginx配置Collabora Online代理
编辑 nginx 配置文件
vim /usr/local/nginx/conf/nginx.conf
配置文件内容:(注意:nginx和Collabora Online在同一个服务器上)
server {
listen 80;
server_name localhost;
# 禁用SSL(强制HTTP)
if ($http_x_forwarded_proto = "https") {
return 301 http://$host$request_uri;
}
location / {
proxy_set_header X-Real-IP $remote_addr;
proxy_pass http://127.0.0.1:9980;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
client_max_body_size 4096m;
}
# static files
location ^~ /browser {
proxy_pass http://127.0.0.1:9980;
proxy_set_header Host $http_host;
}
# WOPI discovery URL
location ^~ /hosting/discovery {
proxy_pass http://127.0.0.1:9980;
proxy_set_header Host $http_host;
}
# Capabilities
location ^~ /hosting/capabilities {
proxy_pass http://127.0.0.1:9980;
proxy_set_header Host $http_host;
}
# main websocket
location ~ ^/cool/(.*)/ws$ {
proxy_pass http://127.0.0.1:9980;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "Upgrade";
proxy_set_header Host $http_host;
proxy_read_timeout 36000s;
}
# download, presentation and image upload
location ~ ^/(c|l)ool {
proxy_pass http://127.0.0.1:9980;
proxy_set_header Host $http_host;
}
# Admin Console websocket
location ^~ /cool/adminws {
proxy_pass http://127.0.0.1:9980;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "Upgrade";
proxy_set_header Host $http_host;
proxy_read_timeout 36000s;
}
}
重新启动nginx:
cd /usr/local/nginx/sbin
./nginx -s stop #关闭nginx
./nginx # 重启nginx
配置完成后,访问:http://10.179.85.122/browser/dist/admin/admin.html (此处记得换成自己的)IP地址
第一次进入时,会让你添加账号密码,输入刚刚配置的账号密码即可。进入后可见界面如下: (博主这里已经启动了一段时间了)
nextCloud安装Nextcloud Office
安装方式一:在线安装
进入 nextCloud
安装方式二:离线安装
由于直接在 nextCloud 中下载 Nextcloud Office 应用受网络限制无法正常下载,因此我们选择手动下载,离线安装的模式
下载离线安装包
进入nextCloud应用官网:All apps - App Store - Nextcloud
找到 Nextcloud Office 并下载
点击下载:
下载完成后,得到如下文件,将其上转到 linux上
安装离线安装包
复制文件到docker中
进入该安装包所在目录,并使用如下命令:
docker cp richdocuments-v8.6.3.tar.gz nextcloud:/var/www/html/apps/
进入容器解压
docker exec -it nextcloud bash #进入容器
cd /var/www/html/apps/ #进入工作目录
tar -zxvf richdocuments-v8.6.3.tar.gz #解压
rm richdocuments-v8.6.3.tar.gz # 删除安装包
chown -R www-data:www-data /var/www/html/apps/recommendations #赋予文件权限
exit # 退出docker容器
配置 Collabora Online
保存后即可看到 在新建中有 Office 相关内容可选
多人协同
将链接赋值给他人即可。