[新版教程] 阿里云盘通过Docker挂载本地WebDAV实现全自动上传/下载 Rclone挂载本地

利用开源开发者提供的 Docker 制作阿里云盘的 WebDAV,这个 WebDAV 可以基于本地服务器实现保存后 NAS 就会自动下载这个文件,整个过程自动化,不需要用户手动干预,下载速度非常快,使用非常方便。

第一步:搞定 Docker 镜像(自行安装docker)

docker run -d --name=aliyundrive-webdav \
  --restart=unless-stopped \
  -p 9000:8080 \
  -v /alidrive/aliyundrive-webdav/:/etc/aliyundrive-webdav/ \
  -e REFRESH_TOKEN='token' \
  -e WEBDAV_AUTH_USER=web账号 \
  -e WEBDAV_AUTH_PASSWORD=web密码\
  messense/aliyundrive-webdav
-v 是文件映射(主机:容器)
-e是环境变量
-p端口映射(主机:容器)

点击这里使用阿里云盘扫码获取你的账户 token:https://messense-aliyundrive-webdav-backendrefresh-token-ucs0wn.streamlit.app/

第二步 文件挂载

  1. 安装Rclone
    这个官方有提供脚本安装,一行代码搞定。

    curl https://rclone.org/install.sh | sudo bash
    

    安装之后,输入 rclone config 配置,命令行配置,不用怕,输错了,删了重来就行。先输入 n 新建,然后,然后你看图吧,一切尽在不言中(图中)
    [新版教程] 阿里云盘通过Docker挂载本地WebDAV实现全自动上传/下载 Rclone挂载本地_第1张图片

    1. 挂载
      方式一:docker挂载映射主机路径(推荐)
docker run -d \
--restart=always \
  --name rclone \
    --volume 配置文件存储路径:/config/rclone \
    --volume 主机上你要挂载的路径:/data:shared \
    --user $(id -u):$(id -g) \
    --volume /etc/passwd:/etc/passwd:ro --volume /etc/group:/etc/group:ro \
    --device /dev/fuse --cap-add SYS_ADMIN --security-opt apparmor:unconfined \
    rclone/rclone \
    mount aliyun: /data --allow-other --allow-non-empty --vfs-cache-mode writes 

"aliyun" 是rclone中配置的网盘name

方式二:直接挂载到主机,主机重启后可能会导致无法开机(慎用)

使用rclone的命令挂载,rclone这东西太强大了,你看它能挂载的网盘类型就知道了,有机会去研究下它的高级玩法,官方文档
```bash
# 新建目录
mkdir /aliyun
# 赋予权限
chmod 777 /aliyun
# 挂载
rclone mount aliyun: /aliyun --allow-other --allow-non-empty --vfs-cache-mode writes --daemon
# 查看是否挂载
df -h
# 进入目录有你的文件就表明成功
cd /aliyun
```
ps:第一个aliyun是上一步新建的名字,第二个aliyun是这一步新建的目录,记得改成自己的。
4. 开机自启
	先卸载掉。

新建启动文件

vi /etc/systemd/system/rclone-aliyun.service

贴入下面代码,记得改你的名字 aliyun

[Unit]
Description=rclone-aliyun
[Service]
User=root
ExecStart=rclone mount aliyun: /aliyun --allow-other --allow-non-empty --vfs-cache-mode writes
Restart=on-abort
[Install]
WantedBy=multi-user.target

开机自启

# 重载配置
systemctl daemon-reload
# 启动
systemctl start rclone-aliyun.service
# 查看状态
systemctl status rclone-aliyun.service
# 设置自启动
systemctl enable rclone-aliyun.service

如果挂载了多个,可以新建多个启动文件,eg:rclone-onedrive.service。

你可能感兴趣的:(docker,容器,运维)