Lsky Pro (兰空图床) + Cloudflare R2 Docker 部署指南
本教程基于 Docker Compose 部署 Lsky Pro,并使用 Cloudflare R2 作为后端存储,实现10G可用空间、全球加速的私有图床。
一、 环境准备
- 服务器/NAS:支持 Docker 和 Docker Compose (x86 或 ARM 均可)。
- 存储:Cloudflare R2 账号(已创建 Bucket,获取了 Access Key, Secret Key 和 Endpoint)。
- 域名:已绑定到 R2 的自定义域名(如
https://img.your.website)。(如果没有自己的域名,使用cloudflare分配的也可以,不过不好看)
二、 部署步骤
1. 创建目录与配置文件
在服务器上创建一个文件夹(例如 lsky),并在其中创建 docker-compose.yml 文件。
|
|
2. 编写 docker-compose.yml
复制以下内容填入文件。这是经过修正、兼容性最好的版本(使用 MariaDB 替代 MySQL 以避免架构兼容性问题)。
|
|
三、 网页初始化安装
浏览器访问 http://你的NAS_IP:9080 进入安装向导。
1. 环境检测
点击下一步,直到进入“配置数据库”页面。
2. 数据库配置(这里最容易填错)
请严格按照下表填写,不要填 127.0.0.1。
| 设置项 | 填入内容 | 说明 |
|---|---|---|
| 数据库类型 | MySQL 5.7+ |
(MariaDB 兼容 MySQL) |
| 数据库连接地址 | mysql-lsky |
重点! 必须填 docker-compose 里定义的服务名 |
| 数据库连接端口 | 3306 |
默认端口 |
| 数据库名称 | lsky-data |
对应 yml 里的MYSQL_DATABASE |
| 数据库用户名 | root |
默认超管用户 |
| 数据库密码 | lAsWjb6rzSzENUYg |
对应 yml 里的MYSQL_ROOT_PASSWORD |
设置好管理员账号邮箱和密码,点击安装。
四、 配置 Cloudflare R2 存储
进入 Lsky 后台 -> 存储策略 -> 添加存储策略 -> 选择 AWS S3。
1. 填写参数
| 参数 | 填写说明 | 示例/注意点 |
|---|---|---|
| AccessKeyId | R2 提供的 Key ID | 9fb2a1... |
| SecretAccessKey | R2 提供的 Secret Key | 4b2854... |
| 连接地址 (Endpoint) | R2 的 S3 API 地址 | https://xxxx.r2.cloudflarestorage.com❌结尾不要带 / ❌不要带桶名 |
| 区域 (Region) | auto |
填 auto 即可 |
| 存储桶名称 | 你的 R2 Bucket 名字 | selfname-img |
| 访问域名 | 对外展示的域名 | https://img.your.website❌ **只填域名!**不要填 {year}/{month}等变量 |
2. 启用策略
保存后,在存储策略列表中:
- 开启 该策略。
- 点击 “设为默认” (这一步不做,图片还是会存到本地硬盘)。
五、 关键设置修正(避坑指南)
1. 为什么显示总容量只有 500MB?
Lsky Pro 默认给每个用户组(包括管理员)设置了配额限制。
- 路径:后台 -> 用户管理 -> 角色组。
- 操作:编辑“管理员”组(以及其他用户组)。
- 修改:将 “总容量” 改为一个很大的数字(如
1024000 MB)或留空(视版本而定)以解除限制。
2. 文件名路径规则
- Lsky Pro 自动归档:Lsky 会自动按
日期/随机文件名存储,不需要像 PicGo 那样手动设置路径规则。 - 访问域名错误:如果在“访问域名”里填了路径变量,生成的链接会变成
https://域名/{year}/...导致无法访问。请保持访问域名纯净。
六、 配合 PicGo 使用(可选)
如果你想在桌面端快捷上传:
-
PicGo 插件设置搜索安装
lsky-pro插件。 -
配置插件:
- Server Url:
http://你的IP:9080/api/v1(注意/api/v1后缀) - Token: 在 Lsky 后台 -> 个人中心 -> 接口 -> 复制 Token。
- Strategy ID: 留空(默认走后台设置的默认策略)。
- Server Url:
-
现在你可以用快捷键截图,自动上传到 Lsky 并同步到 R2 了