CloudDrive2是一款可将百度、阿里云、115 等主流网盘挂载为本地磁盘的工具,Docker 部署最稳定、易维护。以下是debian系统下从0到1的完整步骤,新手也能一次成功。

一、准备工作(Debian 系统)

1.1 系统要求

Debian 11(Bullseye)/ 12(Bookworm)/ 13(Trixie)
架构:x86_64(amd64)、arm64 均可
已联网,可访问 Docker Hub

1.2 更新系统并安装依赖

# 更新包列表
sudo apt update && sudo apt upgrade -y
# 安装必要工具(HTTPS、证书、curl 等)
sudo apt install -y apt-transport-https ca-certificates curl gnupg lsb-release

二、安装 Docker Engine(官方推荐)

2.1 添加 Docker 官方 GPG 密钥

sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg

2.2 添加 Docker 官方软件源

echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/debian \
  $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

2.3 安装 Docker 及 Compose 插件

sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

2.4 验证 Docker 安装

# 查看 Docker 版本
docker --version
# 运行 hello-world 测试
sudo docker run hello-world

出现 “Hello from Docker!” 即安装成功。

2.5(可选)允许普通用户运行 Docker

sudo usermod -aG docker $USER
# 退出当前终端重新登录生效
exit

三、安装 FUSE(CloudDrive2 必需)

CloudDrive2 依赖 FUSE 实现网盘挂载,Debian 默认未安装:

sudo apt install -y fuse
# 加载 FUSE 内核模块
sudo modprobe fuse
# 开机自动加载
echo "fuse" | sudo tee -a /etc/modules-load.d/fuse.conf

四、部署 CloudDrive2(Docker 方式)

4.1 方式一:Docker Compose(推荐,易管理)

4.1.1 创建部署目录

# 创建存放配置与挂载的目录(可自定义路径)
mkdir -p ~/clouddrive2/{config,cloudnas,media}
cd ~/clouddrive2

4.1.2 编写 docker-compose.yml

version: "3.8"
services:
  clouddrive2:
  image: cloudnas/clouddrive2:latest  # 官方稳定镜像
  container_name: clouddrive2
  restart: unless-stopped  # 异常退出自动重启
  privileged: true  # 必需:启用特权模式(FUSE 挂载需要)
  pid: host  # 必需:使用主机 PID 命名空间
  network_mode: host  # 推荐:主机网络,避免端口映射问题
environment:
  - TZ=Asia/Shanghai  # 时区
  - CLOUDDRIVE_HOME=/Config  # 容器内配置目录
volumes:
  - ./config:/Config  # 配置持久化(本地:容器)
  - ./cloudnas:/CloudNAS:shared  # 网盘挂载目录(shared 必需)
  - ./media:/media:shared  # 可选:媒体文件目录
  - /dev/fuse:/dev/fuse  # 必需:挂载 FUSE 设备
devices:
  - /dev/fuse:/dev/fuse

4.1.3 启动容器

# 后台启动并拉取镜像
docker-compose up -d
# 查看容器状态(STATUS 为 Up 即成功)
docker ps

4.2 方式二:单条 docker run 命令(快速)

docker run -d \
  --name clouddrive2 \
  --restart unless-stopped \
  --privileged \
  --pid=host \
  --network=host \
  -e TZ=Asia/Shanghai \
  -e CLOUDDRIVE_HOME=/Config \
  -v ~/clouddrive2/config:/Config \
  -v ~/clouddrive2/cloudnas:/CloudNAS:shared \
  -v ~/clouddrive2/media:/media:shared \
  -v /dev/fuse:/dev/fuse \
  --device /dev/fuse \
cloudnas/clouddrive2:latest

五、访问与初始化 CloudDrive2

5.1 访问 Web 管理界面

默认端口:19798浏览器打开:http://你的Debian服务器IP:19798

5.2 初始化设置

首次打开会提示设置管理员密码(务必记住)
登录后,点击左侧「网盘」→「添加网盘」,选择要挂载的网盘(百度、阿里云、115 等)
按提示完成网盘授权登录
点击左侧「挂载」→「添加挂载点」,选择网盘目录,映射到本地 /CloudNAS(对应宿主机 ~/clouddrive2/cloudnas)

六、常见问题与排错

6.1 容器启动失败(权限 / 挂载)

报错 permission denied:确保本地目录权限为 755 或 777

chmod -R 755 ~/clouddrive2

报错 fuse: device not found:重新安装 FUSE 并加载模块

sudo apt reinstall fuse && sudo modprobe fuse

挂载失败:执行共享挂载授权(Debian 常见)

sudo mount --make-shared $(df -P ~/clouddrive2/cloudnas | tail -1 | awk '{print $6}')

6.2 无法访问 Web 界面

检查端口是否被占用:

netstat -tuln | grep 19798

关闭防火墙或放行端口:

sudo ufw allow 19798/tcp

改用端口映射(不推荐 host 网络时):

在 docker run 或 compose 中添加 -p 19798:19798,并删除 network_mode: host

6.3 网盘挂载后本地看不到文件

确认挂载点选择 /CloudNAS(容器内),对应宿主机 ~/clouddrive2/cloudnas
检查挂载参数是否带 :shared
重启容器:

docker restart clouddrive2

七、日常管理命令

# 查看容器日志
docker logs -f clouddrive2
# 重启容器
docker restart clouddrive2
# 停止容器
docker stop clouddrive2
# 删除容器(数据保留在本地目录)
docker rm clouddrive2
# 更新镜像(重新拉取最新版)
docker pull cloudnas/clouddrive2:latest && docker-compose up -d

八、卸载(如需)

# 停止并删除容器
cd ~/clouddrive2 && docker-compose down
# 删除本地数据(谨慎操作)
rm -rf ~/clouddrive2
# 卸载 Docker(如需)
sudo apt purge -y docker-ce docker-ce-cli containerd.io
sudo rm -rf /var/lib/docker /etc/docker

发表评论