手把手教你如何通过Centos7搭建属于自己的nextcloud网盘(三)

createh52周前 (06-03)技术教程10

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、外网如何通过域名访问我们的网盘。

相关文章

迅游科技赵亚南:游戏监控实践分享

赵亚南,7年运维实践经验,早期主要负责过淘宝网淘江湖、浙江日报、银率网(北京)、广州宝洁、机电之家等网站的维护,2012年后加入重庆迅游,负责开服网、开区网及多个游戏项目的运维,务真求实,追求以公司项...

Nginx Lua编程基础

Lua是一门脚本动态语言,并不太适合做复杂业务逻辑的程序开发,但是,在高并发场景下,Nginx Lua编程是解决性能问题的利器。Nginx Lua编程主要的应用场景如下:API网关:实现数据校验前置、...

Docker-基础操作

一、镜像1、从仓库获取镜像搜索镜像:docker search image_name 搜索结果过滤: 是否官方: docker search --filter="is-offical=true...

Springmvc使用Nginx负载均衡session共享

上一节,我们讲到nginx的结构组成,已经把模块、还有之前谈及负载均衡知识时候遗留的东西进行了讲解,那么今天我们继续把使用nginx做负载均衡的时候,如何处理session的方法做个解析,如何有需要对...

常用高并发网络线程模型设计及MongoDB线程模型优化实践

服务端通常需要支持高并发业务访问,如何设计优秀的服务端网络IO工作线程/进程模型对业务的高并发访问需求起着至关重要的核心作用。本文总结了了不同场景下的多种网络IO线程/进程模型,并给出了各种模型的优缺...

新浪微博混合云架构实践挑战之弹性调度揭秘

微博DCP弹性调度的需求是快速迭代实现内网私有云计算资源统一管理调配,公有云上获得计算资源,实现快速自动化资源调度与应用部署。我们要解决的问题主要有服务池动态伸缩、单机容器灰度、多实例部署、故障自动恢...