使用Docker搭建Cloudreve私人网盘:支持离线下载与域名访问

图片[1]-使用Docker搭建Cloudreve私人网盘:支持离线下载与域名访问-极客小站

在数字化时代,拥有一个个人化的网盘服务变得越来越重要。Cloudreve是一个开源的文件托管程序,它不仅提供了基本的文件存储和分享功能,还能支持离线下载等功能。通过使用Docker容器化技术,我们可以轻松地搭建一个稳定且易于管理的私人网盘。本文将指导你如何使用Docker搭建一个支持离线下载和域名访问的Cloudreve私人网盘。

准备工作

在开始之前,请确保你的服务器或虚拟主机已经安装了Docker。如果没有安装,可以参考Docker官方文档进行安装。

Step 1: 拉取Cloudreve Docker镜像

首先,我们需要从Docker Hub拉取Cloudreve的官方镜像。打开终端或命令行工具,执行以下命令:

<code>docker pull cloudreve/cloudreve</code>

Step 2: 创建数据卷

为了持久化Cloudreve的数据,我们需要创建一个Docker数据卷。执行以下命令来创建一个新的数据卷:

<code>docker volume create cloudreve_data</code>

Step 3: 启动Cloudreve容器

现在,我们可以使用以下命令启动Cloudreve容器,并映射端口和数据卷:

<code>docker run -d \<br>  --name cloudreve \<br>  -v cloudreve_data:/opt/cloudreve \<br>  -p 80:80 \<br>  cloudreve/cloudreve</code>

这里的参数解释如下:

  • -d 表示后台运行容器。
  • --name cloudreve 指定容器名称为cloudreve。
  • -v cloudreve_data:/opt/cloudreve 将数据卷挂载到容器内的/opt/cloudreve目录。
  • -p 80:80 将宿主机的80端口映射到容器内的80端口。

Step 4: 访问Cloudreve

启动容器后,可以通过访问服务器的IP地址或域名来访问Cloudreve。例如,如果服务器的IP地址是192.168.1.100,则可以通过访问http://192.168.1.100来打开Cloudreve的Web界面。

首次访问时,系统会提示你设置管理员账户。按照提示完成设置即可。

Step 5: 配置离线下载

Cloudreve支持离线下载功能,需要配置下载器插件。登录到Cloudreve后台,进入插件管理,安装离线下载插件,并根据插件要求配置相应的下载器(如Aria2、Transmission等)。

Step 6: 域名绑定

为了让其他人可以通过域名访问你的Cloudreve网盘,你需要将域名解析到服务器的IP地址,并在Cloudreve中配置域名。

  1. 配置DNS解析:登录到你的域名注册商或DNS服务商,将域名的A记录指向服务器的IP地址。
  2. 配置Cloudreve域名:登录Cloudreve后台,进入系统设置,将域名添加到域名列表中。

例如,如果你的域名为cloud.mydomain.com,则需要在Cloudreve中设置cloud.mydomain.com作为访问域名。

Step 7: HTTPS加密

为了保障数据传输的安全性,建议使用HTTPS加密连接。可以使用Let’s Encrypt免费证书服务来实现这一点。这里推荐使用Certbot来自动申请和续订证书。

安装Certbot并为域名申请证书:

sudo apt-get update
sudo apt-get install certbot python3-certbot-nginx
sudo certbot --nginx -d cloud.mydomain.com</code>

NGINX反向代理到域名

创建nginx目录结构

mkdir -p /home/nginx

touch /home/nginx/nginx.conf

mkdir -p /home/nginx/certs

申请证书

curl https://get.acme.sh | sh

~/.acme.sh/acme.sh –register-account -m xxxx@gmail.com

~/.acme.sh/acme.sh –issue -d kjlion.ga –standalone

下载证书

~/.acme.sh/acme.sh –installcert -d kjlion.ga–key-file /home/nginx/certs/key.pem –fullchain-file /home/nginx/certs/cert.pem

清除域名证书

~/.acme.sh/acme.sh –remove -d kjlion.ga

手动删除/root/acme目录

进入目录编辑文件

cd /home/nginx/ && nano nginx.conf

反向代理配置,代理指定IP加端口

events {

    worker_connections  1024;

}

http {

  client_max_body_size 1000m;  

  #上传限制参数1G以内文件可上传

  server {

    listen 80;

    server_name kjlion.ga;

    return 301 https://$host$request_uri;

  }

  server {

    listen 443 ssl http2;

    server_name kjlion.ga;

    ssl_certificate /etc/nginx/certs/cert.pem;

    ssl_certificate_key /etc/nginx/certs/key.pem;

    location / {

      proxy_pass http://127.0.0.1:5212;

      proxy_set_header Host $host;

      proxy_set_header X-Real-IP $remote_addr;

      proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

    }

  }

}

部署容器

docker run -d –name nginx -p 80:80 -p 443:443 -v /home/nginx/nginx.conf:/etc/nginx/nginx.conf -v /home/nginx/certs:/etc/nginx/certs -v /home/nginx/html:/usr/share/nginx/html nginx:latest

查看运行状态

docker ps -a

开机自启动

docker update –restart=always nginx

总结

通过上述步骤,你现在应该已经成功地使用Docker搭建了一个支持离线下载和域名访问的Cloudreve私人网盘。Cloudreve提供了丰富的功能,不仅方便个人使用,也可以作为小型团队的文件共享工具。随着Docker技术的普及,这种方式不仅简化了部署过程,还提高了系统的可维护性和可靠性。

© 版权声明
THE END
喜欢就支持一下吧
点赞6 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容