一、完整部署步骤(Pro 版)
1. 前置准备
确保已安装 Docker 和 Docker Compose(建议 Docker 版本 ≥ 20.10,Compose 版本 ≥ v2)。
检查安装状态:bash
docker --version docker compose version # 注意 Compose v2 命令是 docker compose(无短横线)
若未安装,参考官方文档:
2. 准备目录和配置文件
bash
# 创建专用目录并进入
mkdir -p ~/cloudreve && cd ~/cloudreve
# 下载 Pro 版 docker-compose.yml(从 GitHub 仓库或官方提供的链接获取)
# 示例:若官方提供直接下载链接,可使用 wget 或 curl
wget https://raw.githubusercontent.com/cloudreve/Cloudreve/master/docker-compose.yml # 替换为实际 Pro 版配置文件地址
docker-compose.yml
关键内容说明(Pro 版通常包含以下服务):
yaml
version: '3'
services:
cloudreve:
image: cloudreve.azurecr.io/cloudreve/pro:latest # Pro 版私有镜像
container_name: cloudreve
ports:
- "5212:5212"
volumes:
- ./data/cloudreve:/cloudreve/data
- ./data/uploads:/cloudreve/uploads
- ./data/config:/cloudreve/config
environment:
- CR_LICENSE_KEY=${CR_LICENSE_KEY} # 引用外部环境变量
- DB_HOST=mysql # 关联 MySQL 服务
- DB_PORT=3306
- DB_USER=cloudreve
- DB_PASS=your_mysql_password
- DB_NAME=cloudreve
- REDIS_HOST=redis # 关联 Redis 服务
- REDIS_PORT=6379
depends_on:
- mysql
- redis
restart: always
mysql:
image: mysql:8.0
container_name: cloudreve-mysql
volumes:
- ./data/mysql:/var/lib/mysql
environment:
- MYSQL_ROOT_PASSWORD=root_password
- MYSQL_DATABASE=cloudreve
- MYSQL_USER=cloudreve
- MYSQL_PASSWORD=your_mysql_password
restart: always
redis:
image: redis:alpine
container_name: cloudreve-redis
volumes:
- ./data/redis:/data
restart: always
3. 登录 Pro 版私有镜像仓库
在 Cloudreve Pro 授权管理面板:
点击「获取 Docker 镜像」,生成私有仓库的 用户名 和 密码(一次性有效,建议立即使用)。
登录镜像仓库:
bash
docker login -u 你的用户名 -p 你的密码 cloudreve.azurecr.io
若出现警告
Using --password via the CLI is insecure
,可改用更安全的方式:bash
echo "你的密码" | docker login -u 你的用户名 --password-stdin cloudreve.azurecr.io
4. 配置授权密钥
将获取到的授权密钥设置为环境变量(临时有效,重启终端后需重新设置):
bash
export CR_LICENSE_KEY="你的授权密钥" # 替换为实际密钥(如 cr-pro-xxxxxx)
永久生效方法(可选):
将环境变量写入 ~/.bashrc
或 ~/.profile
,避免每次登录重新设置:
bash
echo 'export CR_LICENSE_KEY="你的授权密钥"' >> ~/.bashrc
source ~/.bashrc # 立即生效
5. 启动服务
bash
# 在 docker-compose.yml 所在目录执行
docker compose up -d
命令说明:
up -d
:创建并启动所有服务(后台运行)。首次启动会自动拉取 MySQL、Redis 和 Cloudreve Pro 镜像(Pro 镜像较大,需耐心等待)。
二、验证部署状态
查看容器运行状态:
bash
docker compose ps
若所有服务状态为
Up
,则部署成功。查看日志(排查启动失败问题):
bash
# 查看 Cloudreve 日志(重点看授权和数据库连接) docker compose logs -f cloudreve # 查看 MySQL 或 Redis 日志(若数据库连接失败) docker compose logs -f mysql docker compose logs -f redis
访问 Cloudreve:
打开浏览器,访问http://服务器IP:5212
,首次登录的默认账号密码可在日志中找到:bash
docker compose logs cloudreve | grep "初始管理员"
三、常见问题解决
镜像拉取失败
检查私有仓库登录状态:
docker logout cloudreve.azurecr.io
后重新登录。确认网络通畅,若服务器在国内,可能需要配置镜像加速或检查防火墙。
授权密钥无效
确保
CR_LICENSE_KEY
环境变量正确设置(区分大小写)。重新获取授权密钥,执行
export CR_LICENSE_KEY=新密钥
后重启服务:bash
docker compose down && docker compose up -d
数据库连接失败
检查
docker-compose.yml
中DB_USER
、DB_PASS
与 MySQL 环境变量是否一致。首次启动 MySQL 可能需要初始化时间,稍等片刻再重启 Cloudreve:
bash
docker compose restart cloudreve
数据持久化
所有数据通过
./data
目录挂载到主机,删除容器后数据不会丢失。定期备份该目录以防意外。
四、后续管理命令
bash
# 停止服务(保留容器)
docker compose stop
# 启动服务
docker compose start
# 停止并删除容器(数据仍在 ./data 目录)
docker compose down
# 更新镜像并重启(需重新登录仓库)
docker login cloudreve.azurecr.io
docker compose pull
docker compose up -d
按照以上步骤,即可通过 Docker Compose 快速部署包含数据库、缓存的 Cloudreve Pro 版,适合生产环境使用。