“简洁实用,没有繁琐设置!Cloudreve是个人使用的最佳网盘“

Cloudreve是一款基于Web的文件共享和管理服务软件。它可以用于创建自己的私有云存储服务或公共文件分享平台,该网盘底层支持本机存储、从机存储、阿里云OSS、又拍云、腾讯云COS、七牛云存储、OneDrive(国际版/世纪互联版)等多种存储方式,每种存储方式的上传和下载都是客户端直传,无需经过服务器中转。Cloudreve是简单简洁的一个网盘,个人使用足够了,没有nextcloud那么复杂和庞大。

系统环境: Centos 8 nginx(用作代理)

下载源码

地址:https://github.com/cloudreve/Cloudreve/releases

简单安装

新版本使用GO语言重构之后解压完成之后只有一个cloudreve二进制启动文件。 上传到网站根目录并解压

./cloudreve执行,出现下面提示表示成功运行了。会出现默认账号和密码以及监听端口,默认是5212.

[root@centos8 cloudreve]# ./cloudreve 

   ___ _                 _                    
  / __\ | ___  _   _  __| |_ __ _____   _____ 
 / /  | |/ _ \| | | |/ _ | '__/ _ \ \ / / _ \
/ /___| | (_) | |_| | (_| | | |  __/\ V /  __/
\____/|_|\___/ \__,_|\__,_|_|  \___| \_/ \___|

   V3.2.1  Commit #3b22b4f  Pro=false
================================================

[Info]    2021-04-21 19:49:21 初始化数据库连接
[Info]    2021-04-21 19:49:21 开始进行数据库初始化...
[Info]    2021-04-21 19:49:22 初始管理员账号:admin@cloudreve.org
[Info]    2021-04-21 19:49:22 初始管理员密码:BnAc9TkN
[Info]    2021-04-21 19:49:22 数据库初始化结束
[Info]    2021-04-21 19:49:22 初始化任务队列,WorkerNum = 10
[Info]    2021-04-21 19:49:22 初始化定时任务...
[Info]    2021-04-21 19:49:22 当前运行模式:Master
[Info]    2021-04-21 19:49:22 开始监听 :5212
[Info]    2021-04-21 19:49:24 有新的版本 [3.3.1] 可用,下载:https://github.com/cloudreve/Cloudreve/releases/tag/3.3.1

开启防火墙和云服务器的安全组5212端口。

firewall-cmd --zone=public --add-port=5212/tcp --permanent
firewall-cmd --reload

浏览器登录http://ip:5212 输入刚刚的账号密码进去之后再修改密码。

利用nginx反向代理

因为cloudreve默认不是使用nginx等web服务器的,应该是内置的那种,因此建议使用nginx作为代理访问。 建议先部署nginx,参考之前的文章:

【必读】从零开始,一步步教你安装nginx,搭建个人博客网站!

然后在配置80端口的server块进行如下配置,实际就是访问服务器的80端口会代理到网盘5212。

location / {
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header Host $http_host;
    proxy_redirect off;
    proxy_pass http://127.0.0.1:5212;

    # 如果您要使用本地存储策略,请将下一行注释符删除,并更改大小为理论最大文件尺寸
    # client_max_body_size 20000m;
}

高级功能配置

添加参数启动,通过-c指定配置文件。

./cloudreve -c /path/to/conf.ini  # 指定配置文件

默认采用sqsli,如果需要配置使用mysql需修改配置文件。

可以参考: 【必看】Centos 8系统下,一键安装MySQL服务器,助你快速搭建数据库!

conf.ini配置

在后面添加如下配置

[Database]
; 数据库类型,目前支持 sqlite | mysql
Type = mysql
; MySQL 端口
Port = 3306
; 用户名
User = cloudreve
; 密码
Password = cloudreve
; 数据库地址
Host = 127.0.0.1
; 数据库名称
Name = cloudreve
; 数据表前缀
TablePrefix = cd

配置redis

如果需要配置redis缓存,在后面添加如下内容。

[Redis]
Server = 127.0.0.1:6379
Password = 
DB = 1

重置管理员密码

使用nginx代理cloudreve,添加mysql,redis,ssl证书在nginx配置

忘记密码或者无法登录解决方法。

将cloudreve数据库删除,使用./cloudreve -c conf.ini重写数据库,出现默认用户密码,登录进去再进行修改

(重置管理员密码,这个似乎只适合sqlite的使用。)

./cloudreve --database-script ResetAdminPassword

配置ssl证书,在nginx中配置

在网站配置中配置ssl证书和密钥路以及端口。

systemctl管理启动进程

创建文件,替换对应的二进制程序目录 vim /usr/lib/systemd/system/cloudreve.service

[Unit]
Description=Cloudreve
Documentation=https://docs.cloudreve.org
After=network.target
After=mysqld.service
Wants=network.target

[Service]
WorkingDirectory=/PATH_TO_CLOUDREVE
ExecStart=/www/server/cloudreve -c /www/server/conf.ini # 启动进程和配置文件
Restart=on-abnormal
RestartSec=5s
KillMode=mixed

StandardOutput=null
StandardError=syslog

[Install]
WantedBy=multi-user.target

使用systemctl管理进程 systemctl start cloudreve #启动进程 systemctl stop cloudreve #停止进程 systemctl enable cloudreve #开机启动进程

完整配置示例参考

[System]
; 运行模式
Mode = master
; 监听端口
Listen = :5000
; 是否开启 Debug
Debug = false
; Session 密钥, 一般在首次启动时自动生成
SessionSecret = 23333
; Hash 加盐, 一般在首次启动时自动生成
HashIDSalt = something really hard to guss

; SSL 相关
[SSL]
; SSL 监听端口
Listen = :443
; 证书路径
CertPath = C:\Users\i\Documents\fullchain.pem
; 私钥路径
KeyPath = C:\Users\i\Documents\privkey.pem

; 启用 Unix Socket 监听
[UnixSocket]
Listen = /run/cloudreve/cloudreve.sock

; 数据库相关,如果你只想使用内置的 SQLite数据库,这一部分直接删去即可
[Database]
; 数据库类型,目前支持 sqlite | mysql
Type = mysql
; MySQL 端口
Port = 3306
; 用户名
User = root
; 密码
Password = root
; 数据库地址
Host = 127.0.0.1
; 数据库名称
Name = v3
; 数据表前缀
TablePrefix = cd_
; SQLite 数据库文件路径
DBFile = cloudreve.db

; 从机模式下的配置
[Slave]
; 通信密钥
Secret = 1234567891234567123456789123456712345678912345671234567891234567
; 回调请求超时时间 (s)
CallbackTimeout = 20
; 签名有效期
SignatureTTL = 60

; 跨域配置
[CORS]
AllowOrigins = *
AllowMethods = OPTIONS,GET,POST
AllowHeaders = *
AllowCredentials = false

; Redis 相关
[Redis]
Server = 127.0.0.1:6379
Password =
DB = 0

; 从机模式缩略图
[Thumbnail]
MaxWidth = 400
MaxHeight = 300
FileSuffix = ._thumb

问题

如果遇到使用反向代理之后上传大文件卡在处理的问题,修改nginx的性能调整,最大上传大小。

理想情况下我觉得使用mysql数据进行数据存储,配置redis缓存,然后通过nginx80端口代理cloudreve网盘是比较好的实现方式,大部分配置可以在conf.ini里面指定。

然后开启端口,使用systemctl进行管理服务进程。

本文由 mdnice 多平台发布

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

不喜欢热闹的孩子

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值