# 项目地址

  • docker 挂载云盘 [Clouddrive] https://hub.docker.com/r/cloudnas/clouddrive
  • Windows 版本
    https://www.lanzoub.com/b08ykvd0h 密码: hr4y
  • Clouddrive 2 版本
    https://www.lanzoub.com/b09017eob 密码:2iu1

# 演示过程视频

# Cloud Drive 说明:

  1. 理解一:
    通过 Clouddrive 把网盘映射成本地磁盘直接使用,同时也提供一个统一的网盘浏览管理 web 界面

  2. 理解二:
    Clouddrive 将云存储服务挂载为本地文件系统。

  3. 理解三:
    linux 下安装 cloudnas,相当于是挂了一块硬盘到 linux 下,硬盘内容是 115,再装 jellyfin 也好 emby 也好,都相当于访问本地硬盘进行整理


Cloud Drive 功能:

  1. 可转存 (json,.txt,115://xxx) 类型的 sha1
  2. 外网访问,分享功能,免登录
  3. 支持对云盘文件夹重命名
  4. jellyfin 客户端,电脑、手机上的浏览器,或者 jellyfin app,或者 kodi 都行

# 配置过程

避坑 docker 安装空间不足,openwrt 一般只要不是自己 DIY 编译的很少有把 docker 分区编译够用的,只能通过挂载分区的方式来实现扩容。

# 安装空间不足,解决方法

1. 创建分区或者添加新分区

一般添加的新的磁盘默认是看不到的,需要执行一下命令创建分区或者格式化成 ext4 才能在挂载点看到该分区。

a. 查看当前系统所有硬盘及分区情况:fdisk -l

b. 在指定的硬盘(例:/dev/sdb)上创建分区:fdisk /dev/sdb , 根据提示进行下一步操作

如:查看帮助(h),新建分区(n),删除分区(d),查看分区情况(p)

c. 分区成功后,写分区表并退出(w)

d. 对新建分区(例:/dev/sda1)进行格式化:mkfs.ext4 /dev/sdb1
由于我自己的是虚拟机的环境,就直接添加一个分区,格式化后直接挂载了,如果是单个物理盘,而且已经安装了 openwrt,请根据命令创建新分区,格式化 ext4 后挂载即可 "

image-20230705165609124

  • 点击添加

image-20230705165552397

  • 选择好分区和挂载目录,勾选上 启用此挂载点

image-20230705165541439

在高级选项里选择 ext4,点击 保存 & 应用

然后重启 openwrt,一定要重启,不然不生效
生效后如下

image-20230705165525408

把分区挂载到 opt 目录后,也就是 docker 的目录达到了扩容的目的


处理完扩容问题后,接下来进入安装阶段

通过 ssh 连接 openwrt 后

开启 MountFlags

mkdir -p /etc/systemd/system/docker.service.d/
cat <<EOF > /etc/systemd/system/docker.service.d/clear_mount_propagation_flags.conf
[Service]
MountFlags=shared
EOF
mount --make-shared /opt

然后

#CD1:
docker run -d \
      --name clouddrive \
      --restart unless-stopped \
      -v /opt/CloudNAS:/CloudNAS:shared \
      -v /opt/Config:/Config \
      --network host \
      --pid host \
     --privileged \
     --device /dev/fuse:/dev/fuse \
     cloudnas/clouddrive
     
#CD2     
docker run -d \
      --name clouddrive \
      --restart unless-stopped \
      --env CLOUDDRIVE_HOME=/Config \
      -v /opt/CloudNAS:/CloudNAS:shared \
      -v /opt/Config:/Config \
      --network host \
      --pid host \
     --privileged \
     --device /dev/fuse:/dev/fuse \
     cloudnas/clouddrive2-unstable

需要映射其他路径请参考官方 docker 说明


自此安装结束
额,(⊙o⊙)… 这张图是挂载到局域网。。。。
image-20230705165509247

然后输入 openwrt 地址加端口号注册或者登录即可

ksvzj7di.png

阿里云和 115 网盘可通过扫码登录

登录好网盘账号以后,电脑可以通过网络共享访问,例如:\192.168.1.1 把网盘映射到本地即可
image-20230705165440182

重启路由 docker 启动失败解决
找到系统 --- 启动项 --- 本地启动脚本(拉到最底部)
image-20230705165414219

按照上图,把下面参数填到指定位置,保存应用,重启即可!

mount --make-shared /opt

# 如果操作中命令错误或者需要删除可以用以下命令。

ps:如果多容器请安需删除,删除其一,请注意不要使用全部删除

查看运行中的容器

docker ps

进入容器

docker exec -i -t containerId /bin/bash

查看容器

docker ps -a

启动指定容器 containerId 是容器的 ID

docker start containerId

停止指定容器 containerId 是容器的 ID

docker stop containerId

删除指定容器 containerId 是容器的 ID

docker rm containerId

查看镜像列表

docker images

删除指定镜像 ImageId 是镜像的 Id

docker rmi ImageId

# 慎用以下全部命令

删除全部容器和镜像命令
列出所有的容器 ID

docker ps -aq

停止所有的容器

docker stop $(docker ps -aq)

删除所有的容器

docker rm $(docker ps -aq)

删除所有的镜像

docker rmi $(docker images -q)  
docker image prune --force --all或者docker image prune -f -a : 删除所有不使用的镜像  
docker container prune: 删除所有停止的容器

# 115 网盘也可以通过 cookie 登录

1. 安装扩展

editthiscookie

Chrome 浏览器也可通过手机 115 扫码登录 115 账号

2.cookie 设置及导出

image-20230705165330676

image-20230705165304688

image-20230705165247436

PC:(浏览器建议 chrome,edge,firefox 最新版,不支持 ie 和 115 浏览器)

# 小白答疑:

  1. cloudnas 的设计初衷

cloudnas 的设计初衷是不用下载直接使用的,为在线随机访问文件做了优化,没对下载进行优化。你可以试试不拷贝,直接访问。

  1. 分享出去给别人看会封号吗

别人访问你的分享看视频的时候,流量是从 115 到你的服务器,再走你的上行带宽到访问者,不会把 115 的直链分享出去

  1. 可否多台设备运行多个 clouddrive?

这种玩法需要注意一下 115 的异地登录风险,尽量不要异地登录

  1. 何为彻底退出 Cloud Drive ?

右上角账号那的退出按钮

  1. 可异地登陆否?

NO! 尽量不要异地运行多个 cloudnas 服务,跑同一个 115 账号。异地访问同一个 cloudnas 服务器没问题,这受控于网盘安全登录,例如:阿里云可在单账号允许 5 个设备登录这种,115 的受限于官方风控。

  1. Cloud Drive 支持生成 115sha1 吗?

不支持生成 115sha1

  1. 想不起来密码?

后续会增加重设密码,但是云端不会保存密码,只保存密码的 md5,所以不会有找回密码的功能,另外需要说明,云盘账号信息是用你自己的密码加密的保存的,所以你忘记了密码的话,云盘账号也就无法找回了,需要重新设置,重置密码之后,所有云盘都需要重新登录了,我们没办法帮你找回你的云盘信息,基于这个考虑,我觉得找回密码其实没有太大意义,找回以后也得从头来过。实在想不起来密码的话,换个邮箱注册也是一样的。所以密码重置功能没有放到很高优先级

  1. 可否加入百度网盘?

NO 百度网盘以前做过,后来他们改了接口,还抓了做 pandownload 的作者,我就不想碰了

  1. 挂载不上?

换个盘符试试,要不重启一下服务看看
windows 服务管理里面,重启名为 CloudDriveService 的服务
刚安装登录就挂不上?从这里下载 winfsp 安装包手动安装一次试试
Test
https://github.com/billziss-gh/winfsp/releases/download/v1.9/winfsp-1.9.21096.msi

  1. clouddrive 支持续传否?

现在的版本 115 已经支持续传了 (大佬很给力)

  1. 从映射盘拷贝 115 文件速度

速度 3M-5M (群友实测) 单线程单文件速度

  1. 内存空间占用?

在访问网盘上的文件时,clouddrive 确实在通过网络下载,但是数据放在内存里,不会占用本地空间

  1. win 挂载 115 网盘后资源管理器经常无响应

windows 文件管理器默认会获取文件的缩略图,有大量图片的时候尤其慢,解决办法是把文件管理器改成详细列表显示,不让它去生成缩略图

  1. 挂载速度慢?试试整个盘都用详细列表模式

windows 版各种问题都是文件管理器要去读文件缩略图造成的,整个盘都用详细列表模式就清净了
image-20230705165145640

最好把整个盘都设置成常规项目,省得文件管理器去读取图片视频音频的元数据

  1. 115 挂载本地,速度?

本地网速够的话,看 4K 蓝光没问题

  1. 115 挂载目录里复制到本地速度

单线程速度 6~8M/s 校验速度比 115 浏览器快不少

  1. 原盘播放效果

取决于本地速度,网盘速度没问题

  1. 系统设置相关选项作用?

image-20230705165121506

这里大部分都是内部调试用,最好不要乱改,第一个可以试试,如果去掉的话,不会自动从云盘刷新目录,曾经打开过的文件夹再打开会非常快,但是从别的终端修改过的内容就看不到了,除非手动点 web 界面的刷新按钮

  1. 挂载设置里点击卸载按钮后,刷新不出页面?

重新安装一遍就行了!

  1. 115 批量导入秒传失败?

应该排查权限的问题,CloudDrive 的路径默认都是对所有人有权限的,选不出来但是直接输入路径有效,说明 mount CloudDrive 的上级目录有权限
115 对秒传请求进行了限速,导致批量导入失败,临时解决方法是在系统设置里把 MaxPreprocessTasks 设为 1

# 其他:
  1. 有些系统 SYS_ADMIN 权限不足,需要 privileged 权限

  2. 群晖 docker 上 mount 出来的 CloudNAS 目录,可以直接 samba 分享给局域网使用

  3. 文件夹下载建议直接用 samba 共享出来,自己在系统文件管理器里 ctrl-c, ctrl-v

  4. 左键单击 (https://t.me/cloudnaschat/947) 文件,可直接下载
    image-20230705164731959

  5. Dropextract,Dropshare 这两个有隐藏功能……

  6. 8 月 4 日 115 妙传限速解决方法
    115 对秒传请求进行了限速,导致批量导入失败,临时解决方法是在系统设置里把 MaxPreprocessTasks 设为 1

如果有其他问题或建议,欢迎飞机联系开发作者
作者电报群:https://t.me/cloudnaschat

更新于 阅读次数

请我喝[茶]~( ̄▽ ̄)~*

KLS 微信支付

微信支付

KLS 支付宝

支付宝

KLS 贝宝

贝宝