CentOS7安装Nextcloud+ocDownloader+aria2使用Nextcloud网盘做离线下载服务器

需求:做离线下载直接保存到网盘,需多用户在线播放视频,在线office文档预览编辑,能分享文件链接,既能做个人网盘,又能做离线下载服务器

环境:CentOS-7-x86_64-Minimal-1810

软件及插件:宝塔面板+Nextcloud+ocDownloader+aria2+AriaNg+onlyoffice


目录

一、宝塔面板

宝塔面板安装

二、添加网站

三、安装Nextcloud应用

四、mysql创建用户和数据库

五、登陆使用nextcloud

六、安装aria2

七、安装AriaNg(可选安装)

八、安装ocDownloader

九、安装onlyoffice

1、安装onlyoffice插件

2、安装onlyoffice文档服务器

3、onlyoffice插件启用文档服务


软件使用版本及作用:

宝塔面板(7.0.3)--面板化管理linux系统,一键安装LNMP或LAMP环境

Nextcloud(17.0.2)--开源网盘,个人认为很好的网盘软件,UI适合,插件丰富

ocDownloader--Nextcloud网盘中的插件应用,可以链接aria2进行离线下载

aria2--离线下载核心程序,用于离线下载,支持http,ftp,bt种子链接,但是没有前台页面,只能使用命令行

AriaNg--用于aria2的页面显示,aria2是一个离线下载程序,没有前台页面,此应用和ocDownloader功能类似

onlyoffice--一款用于网页在线预览和编辑office的应用

 

一、宝塔面板

宝塔面板安装

宝塔官网教程脚本语句

yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh

安装完成后,会在最后显示登陆地址,和用户信息,默认是外网地址,如果虚拟机需自己把地址更换成虚拟机IP

进入宝塔面板,点击首页,会提示安装LNMP环境,要求:PHP必须为7.2及以上,如不确定,请按下图所示的版本

必装环境:nginx,mysql,php

二、添加网站

进入宝塔面板-网站,添加网站名称即可,格式:地址:端口,例如:192.168.1.5:8070,如不要端口,默认是80端口,加端口前请加入防火墙允许该端口

三、安装Nextcloud应用

1、进入官网地址链接,下载Nextcloud服务器版本

2、安装:下载后的文件上传至服务器解压至网站的目录,一般为/www/wwwroot/网站名称/,直接解压所有文件至网站目录

 调整网站文件夹权限为www用户755,如不修改权限,访问网站时,会提示内部错误,让你头疼

四、mysql创建用户和数据库

可以登陆mysql命令行创建用户和数据库,这里我用phpmyadmin工具创建,登陆到phpmyadmin,点击账户-新增用户账户

根据你的需求,来创建用户名和用户密码,这里我创建的用户名为mynextcloud,用户名和密码一定要记住

填写完成后,把页面拉到最下面,执行,就完成数据库的创建了

五、登陆使用nextcloud

访问地址:http://192.168.1.5:8070,是宝塔面板创建网站的地址,访问此地址,就可以登陆到nextcloud网盘页面,按照下图设置,进入网盘

进入nextcloud网盘首页 ,现在你可以尽情使用网盘了

 

六、安装aria2

使用yum安装aria2

yum install aria2

等待安装完成后,创建目录/etc/aria2

mkdir /etc/aria2

chmod 777 /etc/aria2

 建立aria2的配置文件

touch /etc/aria2/aria2.conf

chmod 777 /etc/aria2/aria2.conf

vi /etc/aria2/aria2.conf

把以下内容,全部复制到aria2.conf中去,保存。 

#用户名
#rpc-user=user
#密码
#rpc-passwd=passwd
#上面的认证方式不建议使用,建议使用下面的token方式
#设置加密的密钥
#rpc-secret=token
#允许rpc
enable-rpc=true
#允许所有来源, web界面跨域权限需要
rpc-allow-origin-all=true
#允许外部访问,false的话只监听本地端口
rpc-listen-all=true
#RPC端口, 仅当默认端口被占用时修改
rpc-listen-port=6800
#最大同时下载数(任务数), 路由建议值: 3
max-concurrent-downloads=1000
#断点续传
continue=true
#同服务器连接数
max-connection-per-server=5
#最小文件分片大小, 下载线程数上限取决于能分出多少片, 对于小文件重要
min-split-size=10M
#单文件最大线程数, 路由建议值: 5
split=10
#下载速度限制
max-overall-download-limit=0
#单文件速度限制
max-download-limit=0
#上传速度限制
max-overall-upload-limit=0
#单文件速度限制
max-upload-limit=0
#断开速度过慢的连接
#lowest-speed-limit=0
#验证用,需要1.16.1之后的release版本
#referer=*
#文件保存路径, 默认为当前启动位置
dir=/root/downloads
#文件缓存, 使用内置的文件缓存, 如果你不相信Linux内核文件缓存和磁盘内置缓存时使用
#disk-cache=0
#另一种Linux文件缓存方式
#enable-mmap=true
#文件预分配, 能有效降低文件碎片, 提高磁盘性能. 缺点是预分配时间较长
file-allocation=prealloc
#最小做种时间, 分钟
seed-time=30
#bt服务器设置
#bt-tracker=

启动aria2

加www的好处就是aria2下载的默认权限是www用户的,可以正常读写,删除操作,如果不加默认就是root用户,而root用户默认权限是644,也就是说www用户只能读不能写,不能删除的意思。之前我还纳闷怎么网盘里离线下载的文件没有删除按钮。

sudo -u www aria2c --conf-path=/etc/aria2/aria2.conf -D 

七、安装AriaNg(可选安装)

请注意:括号中是可选安装,当你把本文章所有都安装完成后,也许有疑问,我为啥还要安装ariaNg。ariaNg和ocDownload的功能其实是一样的,给aria2一个操作展示页面,ariaNg可以查看所有的下载信息,可以看到网盘你自己,和所有人的下载信息进度。我之前的想法就是离线下载,做到aria2+ariaNg就行了,但后来又想在线播放,在线存文件。

1、访问AriaNg网站,下载安装包

 2、创建ariaNg网站

请参考目录第二章,创建ariaNg网站,注意添加端口,和开放端口,否则无法访问网站

3、复制目录至网站

解压下载好的文件,然后复制到网站目录,注意权限为www用户755

复制完成后的目录结构 

4、访问ariaNg网站

地址栏输入:http://服务器地址:端口,例如:http://192.168.1.5:8060,打开网页后,会自动连接aria2服务,就可以下载了。后面会讲,如何添加BT服务器,并每周自动更新BT服务器脚本。

 

八、安装ocDownloader

1、插件安装,从官网中下载ocDownloader

2、下载后解压文件至文件夹,放文件夹到网站的apps目录,一般在www/wwwroot/网站名称/apps

注意文件夹权限,设置为www用户755权限

3、网盘启用ocDownloader插件

登陆网盘,应用-您的应用,找到这个插件名称,启用插件后,上面面板刷新下,就能看到功能项

4、使用离线下载

 点击应用,在下载任务栏输入下载地址,启动,就可以离线下载到网盘。

 5、离线下载路径设置

保存后,在文件夹中,就会存在一个下载文件目录。 

九、安装onlyoffice

nextcloud需要使用office在线编辑功能,需要安装onlyoffice插件,插件需要onlyoffice文档服务器支持

1、安装onlyoffice插件

方式一:可以在个人头像-应用-office&text栏,选择onlyoffice,直接安装并使用

方式二:提前去官网下载好安装包,加载进nextcloud插件应用,启用插件

直达nextcloud官网app链接,下载文件onlyoffice.tar.gz

下载后解压文件至文件夹,放文件夹到网站的apps目录,一般在www/wwwroot/网站名称/apps

启用onlyoffice插件

上传好后,刷新页面,点开应用-您的应用,启用,onlyoffice插件安装完成。

2、安装onlyoffice文档服务器

我们使用docker,来更便捷的安装和使用onlyoffice

安装docker

yum install docker

 从docker中拉取onlyoffice,这个需要等待大约1小时,因onlyoffice服务器在国外

sudo docker pull onlyoffice/documentserver

 启动docker服务

systemctl start docker

启动onlyoffice服务至8090端口,请提前把8090端口加入防火墙,可以修改8090端口至任意端口 

sudo docker run -i -t -d -p 8090:80 onlyoffice/documentserver

启动后需要等待几分钟,网页访问:http://本机地址:8090

 

3、onlyoffice插件启用文档服务

在设置-onlyoffice设置中,输入上一步访问成功的网址,点击save保存,有提示success成功,安装成功,接下来就可以在线预览和编辑office文档

  • 17
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
["#0 [internal function]: App\\Console\\Commands\\ExportExcelData->handle()\n#1 /usr/shenhexin/web/wwwroot/abc.shenhexin.com/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(29): call_user_func_array(Array, Array)\n#2 /usr/shenhexin/web/wwwroot/abc.shenhexin.com/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(87): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()\n#3 /usr/shenhexin/web/wwwroot/abc.shenhexin.com/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(31): Illuminate\\Container\\BoundMethod::callBoundMethod(Object(Illuminate\\Foundation\\Application), Array, Object(Closure))\n#4 /usr/shenhexin/web/wwwroot/abc.shenhexin.com/vendor/laravel/framework/src/Illuminate/Container/Container.php(549): Illuminate\\Container\\BoundMethod::call(Object(Illuminate\\Foundation\\Application), Array, Array, NULL)\n#5 /usr/shenhexin/web/wwwroot/abc.shenhexin.com/vendor/laravel/framework/src/Illuminate/Console/Command.php(183): Illuminate\\Container\\Container->call(Array)\n#6 /usr/shenhexin/web/wwwroot/abc.shenhexin.com/vendor/symfony/console/Command/Command.php(255): Illuminate\\Console\\Command->execute(Object(Symfony\\Component\\Console\\Input\\ArgvInput), Object(Illuminate\\Console\\OutputStyle))\n#7 /usr/shenhexin/web/wwwroot/abc.shenhexin.com/vendor/laravel/framework/src/Illuminate/Console/Command.php(170): Symfony\\Component\\Console\\Command\\Command->run(Object(Symfony\\Component\\Console\\Input\\ArgvInput), Object(Illuminate\\Console\\OutputStyle))\n#8 /usr/shenhexin/web/wwwroot/abc.shenhexin.com/vendor/symfony/console/Application.php(982): Illuminate\\Console\\Command->run(Object(Symfony\\Component\\Console\\Input\\ArgvInput), Object(Symfony\\Component\\Console\\Output\\ConsoleOutput))\n#9 /usr/shenhexin/web/wwwroot/abc.shenhexin.com/vendor/symfony/console/Application.php(255): Symfony\\Component\\Console\\Application->doRunCommand(Object(App\\Console\\Commands\\ExportExcelData), Object(Symfony\\Component\\Console\\Input\\ArgvInput), Object(Symfony\\Component\\Console\\Output\\ConsoleOutput))\n#10 /usr/shenhexin/web/wwwroot/abc.shenhexin.com/vendor/symfony/console/Application.php(148): Symfony\\Component\\Console\\Application->doRun(Object(Symfony\\Component\\Console\\Input\\ArgvInput), Object(Symfony\\Component\\Console\\Output\\ConsoleOutput))\n#11 /usr/shenhexin/web/wwwroot/abc.shenhexin.com/vendor/laravel/framework/src/Illuminate/Console/Application.php(88): Symfony\\Component\\Console\\Application->run(Object(Symfony\\Component\\Console\\Input\\ArgvInput), Object(Symfony\\Component\\Console\\Output\\ConsoleOutput))\n#12 /usr/shenhexin/web/wwwroot/abc.shenhexin.com/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(121): Illuminate\\Console\\Application->run(Object(Symfony\\Component\\Console\\Input\\ArgvInput), Object(Symfony\\Component\\Console\\Output\\ConsoleOutput))\n#13 /usr/shenhexin/web/wwwroot/abc.shenhexin.com/artisan(37): Illuminate\\Foundation\\Console\\Kernel->handle(Object(Symfony\\Component\\Console\\Input\\ArgvInput), Object(Symfony\\Component\\Console\\Output\\ConsoleOutput))\n#14 {main}"]
07-08

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值