当前位置: 首页 > article >正文

使用 Cloudreve 搭建你的专属个人网盘

Cloudreve 简介

Cloudreve 是一个基于多存储后端的云存储管理套件,旨在为用户提供一个简单、易用且高效的私有云盘解决方案。它支持多种存储后端,包括本地存储、OneDrive、阿里云OSS、腾讯云COS等,使得用户可以根据自己的需求灵活选择存储方案。Cloudreve 提供了文件管理、分享、在线预览等功能,并且支持多用户管理,非常适合个人和团队使用。

简介

特点概览:

  1. 多存储后端支持:支持多种存储服务,包括本地存储、OneDrive、阿里云OSS等。
  2. 用户管理:支持创建多个用户,方便团队协作。
  3. 文件分享:支持生成文件和文件夹的分享链接。
  4. 在线预览:支持多种文件格式的在线预览,如图片、视频、Office文档等。
  5. WebDAV 支持:可以通过 WebDAV 协议访问和管理文件。
  6. API 接口:提供丰富的 API 接口,方便开发者进行二次开发。
  7. 多语言支持:支持多种语言,满足不同用户的需求。

Cloudreve 的设计理念是简单、高效,它不仅提供了一个易于使用的界面,还通过模块化的设计,使得扩展和维护变得更加简单。无论是个人用户还是企业用户,都可以根据自己的需求,快速部署和使用 Cloudreve。

在接下来的部分,我们将详细介绍如何在 Ubuntu 系统上部署 Cloudreve,包括基础部署和一些高级用法。

Github:https://github.com/cloudreve/Cloudreve/

环境准备

服务器准备

必要前提:

  • 一台有公网 IP 的 Linux 服务器,可以选择腾讯云,阿里云,或者雨云等。
  • 本文以 雨云 为例,新用户注册有优惠。
    你可以点击此链接 https://www.rainyun.com/NTEzMTM1_?s=blog 注册账号。
    注册完毕后,按照以下步骤创建一台自己的云服务器。

创建云服务器

点击 云产品云服务器立即购买

选择距离你较近的区域,以保证低延迟。

带宽建议选择上传和下载大于 30M 即可,网盘的上传和下载速度取决于你所选的带宽大小。
处理器和内存建议选择 2 核 4G。

选择 Ubuntu 22.04 版本,并勾选预装 Docker,接下来的教程会用到 Docker。

最后点击 立即购买,并按照提示进行购买。
购买后等待机器部署完毕,点击购买的服务器,进入管理面板,找到远程连接相关信息。

使用 PowerShell 进行远程连接。

输入 ssh root@你的服务器IP 例如 ssh root@154.9.227.239 回车后,首次需要输入 yes,再次回车后即可登录服务器。

到此为止,我们的云服务器就创建好了。

基础部署教程

在这一节中,我们将详细介绍如何在 Ubuntu 系统上部署 Cloudreve。请确保你已经安装了 Ubuntu 操作系统,并且拥有足够的权限来执行安装和配置操作。

获取 Cloudreve

首先,你需要从 Cloudreve 的 GitHub Release 页面获取已经构建打包完成的主程序。每个版本都提供了常见系统架构下可用的主程序,命名规则为 cloudreve_版本号_操作系统_CPU架构.tar.gz

对于 Ubuntu 系统,你应该下载对应架构的压缩包,例如 cloudreve_3.8.3_linux_amd64.tar.gz

mkdir -p /home/cloudreve
cd /home/cloudreve
curl -L "https://github.com/cloudreve/Cloudreve/releases/download/3.8.3/cloudreve_3.8.3_linux_amd64.tar.gz" -o cloudreve_3.8.3_linux_amd64.tar.gz

解压并启动 Cloudreve

下载完成后,你需要解压压缩包,并赋予执行权限,然后启动 Cloudreve。

# 解压 Cloudreve
tar -zxvf cloudreve_3.8.3_linux_amd64.tar.gz

# 赋予执行权限
chmod +x ./cloudreve

# 启动 Cloudreve
./cloudreve

创建初始管理员账号

Cloudreve 在首次启动时,会创建初始管理员账号。请保管好管理员密码,此密码只会在首次启动时出现。如果你忘记了初始管理员密码,需要删除同级目录下的 cloudreve.db 文件,重新启动主程序以初始化新的管理员账户。

账号密码查看

访问 Cloudreve

Cloudreve 默认会监听 5212 端口。你可以通过浏览器访问 http://服务器IP:5212 进入 Cloudreve 的管理界面。

输入账号以及密码后登录。

输入账号以及密码

上传文件只需要将文件拖到窗口后放置即可。

文件上传

进入管理后台。

后台管理入口

可以经行一些基础设置。

后台管理设置页面

以上步骤完成后,Cloudreve 的基础部署就完成了。你可以开始使用 Cloudreve 进行文件管理、分享等操作。在下一节中,我们将介绍一些高级用法,包括进程守护等配置。

进程守护(可选)

以下两种方式可任选其一。

Systemd

# 编辑配置文件
vim /usr/lib/systemd/system/cloudreve.service

将下文 PATH_TO_CLOUDREVE 更换为程序所在目录:

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

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

StandardOutput=null
StandardError=syslog

[Install]
WantedBy=multi-user.target
# 更新配置
systemctl daemon-reload

# 启动服务
systemctl start cloudreve

# 设置开机启动
systemctl enable cloudreve

管理命令:

# 启动服务
systemctl start cloudreve

# 停止服务
systemctl stop cloudreve

# 重启服务
systemctl restart cloudreve

# 查看状态
systemctl status cloudreve

Supervisor

首先安装supervisor,已安装的可以跳过。

# 安装 supervisor
sudo yum install python-setuptools
sudo easy_install supervisor

# 初始化全局配置文件
sudo touch /etc/supervisord.conf
sudo echo_supervisord_conf > /etc/supervisord.conf

编辑全局配置文件:

sudo vim /etc/supervisord.conf

将文件底部的[include] 分区注释符号;删除,加入新的配置文件包含路径:

[include]
files = /etc/supervisor/conf/*.conf

创建 Cloudreve 应用配置所在文件目录,并创建打开配置文件:

sudo mkdir -p /etc/supervisor/conf
sudo vim /etc/supervisor/conf/cloudreve.conf

根据实际情况填写以下内容并保存:

[program:cloudreve]
directory=/home/cloudreve
command=/home/cloudreve/cloudreve
autostart=true
autorestart=true
stderr_logfile=/var/log/cloudreve.err
stdout_logfile=/var/log/cloudreve.log
environment=CODENATION_ENV=prod

其中以下配置项需要根据实际情况更改:

  • directory: Cloudreve 主程序所在目录
  • command: Cloudreve 主程序绝对路径
  • stderr_logfile: 错误日志路径
  • stdout_logfile: 通常日志路径

通过全局配置文件启动 supervisor:

supervisord -c /etc/supervisord.conf

日后你可以通过以下指令管理 Cloudreve 进程:

# 启动
sudo supervisorctl start cloudreve

# 停止
sudo supervisorctl stop cloudreve

# 查看状态
sudo supervisorctl status cloudreve

使用Docker部署

请注意:官方提供的 docker image,支持三种架构 armv7, arm64 以及 amd64

创建目录结构

cd /home
mkdir -vp cloudreve/{uploads,avatar} \
&& touch cloudreve/conf.ini \
&& touch cloudreve/cloudreve.db

运行

docker run -d \
-p 5212:5212 \
--mount type=bind,source=/home/cloudreve/conf.ini,target=/cloudreve/conf.ini \
--mount type=bind,source=/home/cloudreve/cloudreve.db,target=/cloudreve/cloudreve.db \
-v /home/cloudreve/uploads:/cloudreve/uploads \
-v /home/cloudreve/avatar:/cloudreve/avatar \
cloudreve/cloudreve:latest

解释

  • p 5212:5212:将容器的5212端口映射到宿主机的5212端口,这样您可以通过 http://localhost:5212 或者您的服务器IP加5212端口访问Cloudreve。
  • -mount type=bind,source=/home/cloudreve/conf.ini,target=/cloudreve/conf.ini:将宿主机的 /home/cloudreve/conf.ini 文件挂载到容器中的 /cloudreve/conf.ini,这是Cloudreve的配置文件。
  • -mount type=bind,source=/home/cloudreve/cloudreve.db,target=/cloudreve/cloudreve.db:将宿主机的 /home/cloudreve/cloudreve.db 文件挂载到容器中的 /cloudreve/cloudreve.db,这是Cloudreve的数据库文件。
  • v /home/cloudreve/uploads:/cloudreve/uploads:将宿主机的 /home/cloudreve/uploads 目录挂载到容器中的 /cloudreve/uploads,用于存储上传的文件。
  • v /home/cloudreve/avatar:/cloudreve/avatar:将宿主机的 /home/cloudreve/avatar 目录挂载到容器中的 /cloudreve/avatar,用于存储头像文件。
  • cloudreve/cloudreve:latest:指定使用的Cloudreve的Docker镜像和标签(latest表示最新版)。

确保在执行此命令之前,您已经正确设置了 conf.ini 文件中的配置以匹配您的环境需求。如果这是首次运行,Cloudreve将自动为您生成管理员账户和密码,这些信息将在容器的日志中显示,您可以通过查看容器日志来获取这些信息。

Docker Compose

以下是使用 Docker Compose 部署 Cloudreve 并整合离线下载服务的详细步骤和配置文件示例:

创建目录结构和配置文件

首先,确保在 /home 路径下创建必要的目录和文件:

mkdir -vp cloudreve/{uploads,avatar} \\
&& touch cloudreve/conf.ini \\
&& touch cloudreve/cloudreve.db \\
&& mkdir -p aria2/config \\
&& mkdir -p data/aria2 \\
&& chmod -R 777 data/aria2

Docker Compose 文件

将以下内容保存为 docker-compose.yml 文件,并放置在 /home 目录下,与 cloudreve 同一层级。确保修改文件中的 RPC_SECRET 为您自己的 Aria2 RPC 令牌。

version: "3.8"
services:
  cloudreve:
    container_name: cloudreve
    image: cloudreve/cloudreve:latest
    restart: unless-stopped
    ports:
      - "5212:5212"
    volumes:
      - temp_data:/data
      - ./cloudreve/uploads:/cloudreve/uploads
      - ./cloudreve/conf.ini:/cloudreve/conf.ini
      - ./cloudreve/cloudreve.db:/cloudreve/cloudreve.db
      - ./cloudreve/avatar:/cloudreve/avatar
    depends_on:
      - aria2

  aria2:
    container_name: aria2
    image: p3terx/aria2-pro
    restart: unless-stopped
    environment:
      - RPC_SECRET=your_aria_rpc_token
      - RPC_PORT=6800
    volumes:
      - ./aria2/config:/config
      - temp_data:/data

volumes:
  temp_data:
    driver: local
    driver_opts:
      type: none
      device: $PWD/data
      o: bind

运行 Docker Compose

/home 目录下运行以下命令来启动服务:

docker-compose up -d

这将以后台模式运行容器,您可以从 Docker Compose 的日志中获取默认管理员账户的用户名和密码。

或者,您也可以直接运行,日志将直接输出在当前控制台中:

docker-compose up

控制面板配置

在 Cloudreve 的控制面板中,按照以下配置设置 Aria2:

  • [不可修改] RPC 服务器地址 => http://aria2:6800
  • [可修改, 需保持和 docker-compose.yml 文件一致] RPC 授权令牌 => your_aria_rpc_token
  • [不可修改] Aria2 用作临时下载目录的节点上的绝对路径 => /data

更新和停止服务

关闭当前运行的容器,此步骤不会删除挂载的配置文件以及相关目录:

docker-compose down

如果需要更新镜像,先拉取最新镜像:

docker pull cloudreve/cloudreve

然后重复运行 docker-compose up -d 步骤。


相关链接

雨云:https://www.rainyun.com/NTEzMTM1_?s=blog

我的博客: https://blog.ivwv.site/


http://www.kler.cn/a/374831.html

相关文章:

  • Deformable DETR:Deformable Transformers for End-to-End Object Detection论文学习
  • git命令恢复/还原某个文件、删除远程仓库中的文件
  • 每天40分玩转Django:Django部署
  • 如何学习Trustzone
  • Kali操作系统简单介绍
  • CCF-GESP 等级考试 2023年9月认证C++一级真题解析
  • 分布式 ID 生成策略(一)
  • 如何提高社媒品牌知名度,3个增加曝光的实操方法
  • 微信小程序服务通知
  • 【HarmonyOS NEXT】在 HarmonyOS NEXT 中实现优雅的加载动画
  • python 五子棋小游戏
  • GIN 反向代理功能
  • C/C++ 每日一练:二叉树的先序遍历
  • Webserver(2.6)信号
  • 信号完整性SI总结【小登培训】
  • OpenCV基础知识
  • DB-GPT系列(二):DB-GPT部署(镜像一键部署、源码部署)
  • C++ 代码工程化
  • 微信小程序,打开新的项目,调试遇见[ app.json 文件内容错误] app.json: 在项目根目录未找到 app.json
  • 【行业应用-工业防爆】本安型工业防爆网关,实现安全高效的数据传输与监控
  • 如何解决docker镜像下载失败问题
  • nfs作业
  • Docker | 容器数据卷在docker中的角色:持久化存储
  • WebSocket简单使用
  • Python实现图像(边缘)锐化:梯度锐化、Roberts 算子、Laplace算子、Sobel算子的详细方法
  • 【PythonWeb开发】Flask-RESTful字段格式化