通过Docker搭建一个非常好用的网盘Cloudreve

1.Cloudreve 是什么?(官方介绍)

Cloudreve 可以让您快速搭建起公私兼备的网盘系统。Cloudreve 在底层支持不同的云存储平台,用户在实际使用时无须关心物理存储方式。你可以使用 Cloudreve 搭建个人用网盘、文件分享系统,亦或是针对大小团体的公有云系统。

✨ 特性

  • ☁️ 支持本机、从机、七牛、阿里云 OSS、腾讯云 COS、又拍云、OneDrive (包括世纪互联版) 作为存储端
  • 📤 上传/下载 支持客户端直传,支持下载限速
  • 💾 可对接 Aria2 离线下载,可使用多个从机节点分担下载任务
  • 📚 在线 压缩/解压缩、多文件打包下载
  • 💻 覆盖全部存储策略的 WebDAV 协议支持
  • ⚡ 拖拽上传、目录上传、流式上传处理
  • 🗃️ 文件拖拽管理
  • 👩‍👧‍👦 多用户、用户组
  • 🔗 创建文件、目录的分享链接,可设定自动过期
  • 👁️‍🗨️ 视频、图像、音频、文本、Office 文档在线预览
  • 🎨 自定义配色、黑暗模式、PWA 应用、全站单页应用
  • 🚀 All-In-One 打包,开箱即用
  • 🌈 … …

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

2.前提条件

  1. 一台Linux服务器 我痛的

  2. 安装好docker和docker-compose

    #1.安装Docker
    wget -qO- get.docker.com | bash
    
    #2.开机自动启动
    systemctl enable docker
    
    #3.安装Docker-compose
    sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
    
    #4.赋予执行权限
    sudo chmod +x /usr/local/bin/docker-compose
    
    #5.安装Portainer(可以不安装)
    sudo docker volume create portainer_data
    
    #6.下载并安装 Portainer Server 容器 (可选)
    sudo docker run -d -p 8000:8000 -p 9443:9443 --name portainer \
       --restart=always \
       -v /var/run/docker.sock:/var/run/docker.sock \
       -v portainer_data:/data \
       portainer/portainer-ce:latest
     

3.正式搭建

3.1.创建安装目录

mkdir -p /root/cloudreve

cd /root/cloudreve

mkdir {cloudreve,data}

cd cloudreve

mkdir {avatar,uploads}

touch {conf.ini,cloudreve.db}

3.2.编辑docker-compose.yml文件

如果你有安装Portainer其实可以直接在上面创建一个堆栈来直接输入下面的内容,当然你也可以直接编辑。

cd /root/cloudreve

vim docker-compose.yml

填入内容

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: ddsderek/aria2-pro
    restart: unless-stopped
    environment:
      - RPC_SECRET=qwe123456789  # 修改一个自己的密钥
      - RPC_PORT=6800
      - DOWNLOAD_DIR=/data
      - PUID=0
      - PGID=0
      - UMASK_SET=022
      - TZ=Asia/Tokyo
    volumes:
      - ./aria2/config:/config    # 冒号左边为自己需要映射出来的本地路径
      - temp_data:/data
volumes:
  temp_data:
    driver: local
    driver_opts:
      type: none
      device: $PWD/data
      o: bind

保存退出!

3.3.部署

输入

docker-compose up -d 

部署完成后输入

docker-compose logs

然后你可以看到账号和密码

3.4.配置

如果你开了防火墙,需要开放防火墙

sudo ufw allow 5212 comment 'cloudreve'

4.后期设置

搭建完之后可以通过IP+端口号进行访问

4.1. 配置aria2

image-20221127041730333

③的地址就是aria2容器内部的IP地址

可以通过protainer来查看,也可以直接输入

http://aria2:6800/

测试一下,配置完成。

4.2. 后期更新

cd /root/cloudreve

docker-compose down 

docker-compose pull

docker-compose up -d 

docker image prune  # prune 命令用来删除不再使用的 docker 对象。删除所有未被 tag 标记和未被容器使用的镜像

参考

https://docs.cloudreve.org/

https://github.com/cloudreve/Cloudreve

https://blog.laoda.de/archives/docker-compose-install-lighthouse-cloudreve


 前へ
2022-11-27 Tutu
次へ 
2022-11-19 Tutu
  目次