站点图标 Liao's blog

Docker安装Nextcloud个人/团队网盘并配置redis优化

在服务器上搭建了一个网盘系统,对比了owncloud、seafile之后,最终还是选择了Nextcloud,谁让它好看呢…

环境准备

类目 版本 备注
操作系统 Centos7 64
Docker 20.10.12
nextcloud latest
mysql latest
redis latest

拉取mysql、nextcloud、redis镜像

docker pull mysql
docker pull nextcloud
docker pull redis

安装mysql

docker run -p 3306:3306 --restart=always --name mysql -v /usr/local/mysql/conf:/etc/mysql/conf.d -v /usr/local/mysql/logs:/logs -v /usr/local/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql

配置mysql

docker exec -it mysql容器ID /bin/bash
root@ID:/# mysql -u root -p
mysql> GRANT ALL PRIVILEGES on *.* to root@'%' WITH GRANT OPTION;
mysql> ALTER USER 'root'@'%' IDENTIFIED BY '123456' PASSWORD EXPIRE NEVER;
Query OK, 0 rows affected (0.02 sec)
mysql> ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';
 Query OK, 0 rows affected (0.01 sec)
mysql> FLUSH PRIVILEGES;
mysql> exit

安装Nextcloud

mkdir -p /home/nextcloud
docker run -d --name=nextcloud  -v /home/nextcloud:/var/www/html -p 8000:80 --restart=always nextcloud

配置nextcloud

访问nextcloud

因为我已经安装配置过了,当时没有截图,就大致写一下

http://IP:8000

安装完成,输入安装时创建的管理员账号密码登录即可。

安装Redis,优化nextcloud访问

mkdir -p /home/redis/conf
mkdir -p /home/redis/data

#新增redis配置文件
cd /home/redis/conf
touch redis.conf

修改redis配置文件:vim redis.conf

#bind 127.0.0.1
protected-mode no
appendonly yes
requirepass 123456

启动redis

docker run --name redis -p 6379:6379 -v /home/redis/data:/data -v /home/redis/conf/redis.conf:/etc/redis/redis.conf -d redis redis-server /etc/redis/redis.conf

docker ps 查看服务是否启动

配置nextcloud+redis

cd /home/nextcloud/config

修改 vim config.php
在末尾添加如下代码

'redis' => 
  array (
    'host' => '192.168.1.104',
    'port' => 6379,
    'password' => '123456',
  ),

重启nextcloud

docker restart nextcloud

进入redis容器查看是否已进入缓存

docker exec -it redis bash

#进入redis-cli
> redis-cli
> auth "123456"
> keys *

可以看到已经有值进来了,就证明已经成功。

效果

颜值确实在线。

Nextcloud在应用市场内还有很多支持的apps,有兴趣可以多研究看看

退出移动版