使用 Cloudreve 搭建私有云盘

8 篇文章 0 订阅

使用 Cloudreve 搭建私有云盘

本文手把手的教您部署一套属于自己的云盘系统,及私有云盘搭建教程。操作简单,方便易用。

本文内容参考 Cloudreve 官方文档

Cloudreve 资源地址

最新版下载地址:https://github.com/cloudreve/Cloudreve/releases

本文档系统版本:Ubuntu 22.04

本文档所用 Cloudreve 版本:下载地址 密码:h1xy

  • cloudreve_3.5.3_linux_amd64.tar.gz
  • cloudreve_3.5.3_linux_arm.tar.gz
  • cloudreve_3.5.3_linux_arm64.tar.gz
  • cloudreve_3.5.3_windows_amd64.zip

1. 下载解压到指定目录

# 进入用户目录并解压,user_name 是登录用户名
mkdir -p /home/user_name/www/cloudreve
cd /home/user_name/www/cloudreve
wget https://github.com/cloudreve/Cloudreve/releases/download/3.5.3/cloudreve_3.5.3_linux_amd64.tar.gz
tar zxvf cloudreve_3.5.3_linux_amd64.tar.gz
sudo chmod +x cloudreve

2. 创建配置文件及指定文件夹

cd /home/user_name/www/cloudreve
# 创建文件夹
mkdir avatar
mkdir uploads
sudo chmod -R 777 avatar
sudo chmod -R 777 uploads

# 添加配置文件,内容如下
# 按需修改配置文件,如想使用 Redis,则按需配置 Redis 相关注释
vim conf.ini
[System]
; 运行模式
Mode = master
; 监听端口
Listen = :5212
; 是否开启 Debug
Debug = false
; Session 密钥, 一般在首次启动时自动生成
SessionSecret = bJyC70ESr1gjzoZ4UDwaULtUMsUHGRsm1dQdbCyhtLlniNF3mOWSpnNFShcQgzas
; Hash 加盐, 一般在首次启动时自动生成
HashIDSalt = UozmQYsmWLyRhUTF1H0psmvNGtkobrBNkmoVywfpam8HaS9xXOKdONnnbqNnpLea

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

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

; 数据库相关,如果你只想使用内置的 SQLite 数据库,这一部分直接删去即可
;[Database]
; 数据库类型,目前支持 sqlite/mysql/mssql/postgres
;Type = mysql
; MySQL 端口
;Port = 3306
; 用户名
;User = root
; 密码
;Password = root
; 数据库地址
;Host = 127.0.0.1
; 数据库名称
;Name = v3
; 数据表前缀
;TablePrefix = cd_
; 字符集
;Charset = utf8mb4
; 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

[OptionOverwrite]
; 任务队列最多并行执行的任务数
max_worker_num = 50
; 任务队列中转任务传输时,最大并行协程数
max_parallel_transfer = 10
; 中转分片上传失败后重试的最大次数
chunk_retries = 10

3. 创建控制脚本及开机启动

​ 创建控制脚本

sudo vim /etc/systemd/system/cloudreve.service

​ 内容如下:把 /home/user_name/www/cloudreve 改成自己的目录

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

[Service]
WorkingDirectory=/home/user_name/www/cloudreve
ExecStart=/home/user_name/www/cloudreve/cloudreve
Restart=on-abnormal
RestartSec=5s
KillMode=mixed

StandardOutput=null
StandardError=syslog

[Install]
WantedBy=multi-user.target

​ 授予可执行权

sudo chmod +x /etc/systemd/system/cloudreve.service
# 更新配置
sudo systemctl daemon-reload

​ 创建控制脚本

sudo vim /etc/init.d/cloudreve

​ 内容如下:把 /home/user_name/www/cloudreve 改成自己的目录

#!/bin/sh

### BEGIN INIT INFO
# Provides:       cloudreve
# Required-Start:    $local_fs $remote_fs $network $syslog $named
# Required-Stop:     $local_fs $remote_fs $network $syslog $named
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: starts the cloudreve web server
# Description:       starts cloudreve using start-stop-daemon
### END INIT INFO

# Author: wangbiao
# mail: hiwb@tutanota.com


PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
# /home/user_name/www/cloudreve/ 改为自己目录
DAEMON=/home/user_name/www/cloudreve/cloudreve
DAEMON_ARGS=/home/user_name/www/cloudreve/conf.ini
NAME=cloudreve
DESC=cloudreve

RUNDIR=/var/run/cloudreve
SOCKETFILE=$RUNDIR/cloudreve.sock

test -x $DAEMON || exit 0

if [ -r /etc/default/$NAME ]
then
        . /etc/default/$NAME
fi

. /lib/lsb/init-functions

set -e

if [ "$(id -u)" != "0" ]
then
        log_failure_msg "Must be run as root."
        exit 1
fi

case "$1" in
    start)
        echo -n "Starting $DESC: "
        mkdir -p $RUNDIR
        touch $SOCKETFILE
        chown dlsj:dlsj $RUNDIR $SOCKETFILE
        chmod 755 $RUNDIR

        if [ -n "$ULIMIT" ]
        then
                ulimit -n $ULIMIT || true
        fi

        if start-stop-daemon --start --quiet --oknodo --umask 007 --chuid dlsj:dlsj --exec $DAEMON -- $DAEMON_ARGS
        then
                echo "$NAME."
        else
                echo "failed"
        fi
        ;;
  stop)
        echo -n "Stopping $DESC: "

        if start-stop-daemon --stop --retry forever/TERM/1 --quiet --oknodo --exec $DAEMON
        then
                echo "$NAME."
        else
                echo "failed"
        fi
        rm -f $SOCKETFILE
        sleep 1
        ;;
    restart)
        ${0} stop
        ${0} start
        ;;
    status)
        if netstat -tnpl | grep -q cloudreve; then
            PID=`pidof cloudreve`
            echo "$NAME (pid $PID) is running..."
        else
            echo "$NAME is stopped"
            exit 0
        fi
        ;;

    restart)
        $0 stop
        sleep 1
        $0 start
        ;;

    configtest)
        echo -n "Test $NAME configure files... "

        $DAEMON -t
        ;;

    *)
        echo "Usage: $0 {start|stop|restart|status|configtest}"
        exit 1
        ;;

esac

exit 0

​ 授予可执行权

sudo chmod +x /etc/init.d/cloudreve

4. 第一次启动需手动启动,因为要生成 用户名 及 密码

cd /home/user_name/www/cloudreve
./cloudreve
# 首次启动会初始化相关文件,在日志中会告知 用户名 及 密码 。
# 请自行记录好,避免丢失无法登录系统。

启动项目

方式一:

# 启动服务
sudo systemctl start cloudreve
# 设置开机启动
sudo systemctl enable cloudreve

# 停止服务
sudo systemctl stop cloudreve
#  重启服务
sudo systemctl restart cloudreve
# 查看状态
sudo systemctl status cloudreve

方式二:

# 启动服务
sudo /etc/init.d/cloudreve start
# 停止服务
sudo /etc/init.d/cloudreve stop
#  重启服务
sudo /etc/init.d/cloudreve restart
# 查看状态
sudo /etc/init.d/cloudreve status

访问服务

浏览器输入服务器 ip:port 方式访问:

http://192.168.0.20:5212

Cloudreve 首页

访问后台

浏览器输入服务器 ip:port/admin 方式访问:

http://192.168.0.20:5212/admin

Cloudreve 管理页

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

hiwb

您的鼓励是我创作最大的动力!

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

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

打赏作者

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

抵扣说明:

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

余额充值