手把手教你如何通过Centos7搭建属于自己的nextcloud网盘(三)
nextcloud网盘搭建完成以后想要得到更好的体验,需要对其做相应的优化工作。如果需要在任何地方都能访问到我们搭建的网盘还需要做类似端口映射、动态域名、证书申请、nginx反向代理等工作,家庭宽带需要光猫改成桥接模式并有公网IP,本文不在此介绍。
(一)nextcloud网盘搭建完成以后首先要启用redis缓存,通过docker安装redis的命令如下:
[root@nextcloud ~]# docker run --restart=always -v /data/docker/redis:/data -d --name redis6379 -p 6379:6379 hub.atomgit.com/amd64/redis:7.0.13 --requirepass "123456"
[root@nextcloud ~]# vi /data/docker/redis/redis.conf
创建一个redis.conf的文件,将以下内容填写到redis.conf中。
bind 0.0.0.0
protected-mode no
port 6379
requirepass 123456
[root@nextcloud ~]# cat /data/docker/redis/redis.conf
bind 0.0.0.0
protected-mode no
port 6379
requirepass 123456
进入到redis容器测试功能是否正常,我因为已经配置了nextcloud缓存,所以在输入keys *后面会有内容输出,正常安装以后输入keys *输出应该为空。
[root@nextcloud ~]# docker exec -it redis6379 /bin/bash
root@b327702d62d7:/data# redis-cli -h 127.0.0.1 -p 6379
127.0.0.1:6379>
127.0.0.1:6379> AUTH 123456
OK
127.0.0.1:6379> keys *
1) "b04862507d6067e1854210095d5e5a59/imagePath-03b8bb162dbaa5bd58795e5079586d9b-photos-favicon.ico"
2) "b04862507d6067e1854210095d5e5a59/imagePath-03b8bb162dbaa5bd58795e5079586d9b-serverinfo-app-dark.svg"
3) "b04862507d6067e1854210095d5e5a59/imagePath-03b8bb162dbaa5bd58795e5079586d9b-dashboard-favicon-mask.svg"
上述工作完成以后需要修改nextcloud网盘的config.php文件才能使redis缓存功能生效。
[root@nextcloud /]# cd /data/docker/nextcloud/config/
[root@nextcloud config]# vi config.php
<?php
$CONFIG = array (
'htaccess.RewriteBase' => '/',
'memcache.local' => '\\OC\\Memcache\\APCu',
'memcache.distributed' => '\\OC\\Memcache\\Redis',
'memcache.locking' => '\\OC\\Memcache\\Redis',
'redis' =>
array (
'host' => '192.168.1.7',
'port' => 6379,
'password' => '123456',
),
在config.php文件中加入以上标红的内容,完成后记得重启下docker服务,重启完成后登陆一下网盘,然后在进入redis容器查看缓存是否生成。
[root@nextcloud config]# systemctl restart docker
[root@nextcloud ~]# docker exec -it redis6379 /bin/bash
root@b327702d62d7:/data# redis-cli -h 127.0.0.1 -p 6379
127.0.0.1:6379>
127.0.0.1:6379> AUTH 123456
OK
127.0.0.1:6379> keys *
1) "b04862507d6067e1854210095d5e5a59/imagePath-03b8bb162dbaa5bd58795e5079586d9b-photos-favicon.ico"
2) "b04862507d6067e1854210095d5e5a59/imagePath-03b8bb162dbaa5bd58795e5079586d9b-serverinfo-app-dark.svg"
3) "b04862507d6067e1854210095d5e5a59/imagePath-03b8bb162dbaa5bd58795e5079586d9b-dashboard-favicon-mask.svg"
(二)nextcloud网盘搭建完成以后修改后台任务及修复相关报错信息:
1、在基本设置-后台任务里需要修改后台任务为Cron。只修改这里是不行的,还需要添加一个定时任务。
[root@nextcloud config]# crontab -e
*/5 * * * * docker exec --user www-data nextcloud php /var/www/html/cron.php
加入以上内容,观察是否成功运行。成功运行的截图如下:
2、修复概览里的相关报错信息。
您的安装没有设置默认的电话区域。这对验证个人资料页面中缺少国家代码的电话号码而言是必需的。要允许没有国家代码的电话号码,请添加相应的“default_phone_region”到您的配置文件中。允许的国家和地区请参阅 ISO 3166-1 code ↗。
[root@nextcloud /]# cd /data/docker/nextcloud/config/
[root@nextcloud config]# vi config.php
<?php
$CONFIG = array (
'htaccess.RewriteBase' => '/',
'memcache.local' => '\\OC\\Memcache\\APCu',
'memcache.distributed' => '\\OC\\Memcache\\Redis',
'memcache.locking' => '\\OC\\Memcache\\Redis',
'redis' =>
array (
'host' => '192.168.1.7',
'port' => 6379,
'password' => '123456',
),
'default_phone_region' => 'CN',
如果只是内网使用,到这就算完成了,下一章节将讲解如何启用https、外网如何通过域名访问我们的网盘。