一、结论
Cloudreve对接支持S3协议的第三方对象存储,核心操作思路是提前准备好对象存储服务的Endpoint、AccessKey、SecretKey、Bucket、Region等接入信息,在Cloudreve后台的存储策略模块完成配置并测试连通即可,不需要修改核心代码,操作门槛较低。
二、准备工作
操作前需要提前准备好以下内容,避免中途频繁切换页面查找信息:
- 可正常访问的Cloudreve实例(开源版、付费版均可)
- 第三方对象存储服务的有效账号
- 已创建完成、状态正常的存储桶Bucket
- 对象存储服务商提供的对应存储桶Endpoint地址
- 对应账号的AccessKey、SecretKey密钥对
- 存储桶所属区域的Region编码
- 提前根据业务需求配置好存储桶的基础访问权限(公共读/私有读等)
- 若干大小不同的测试文件(包括几KB的小文件和1G以上的大文件)
三、操作步骤
每一步操作完成后确认预期结果达成,再进入下一个环节,可大幅降低出错概率:
1. 登录第三方对象存储控制台,根据业务需求创建对应存储桶,设置基础访问权限(公共资源类场景建议选公共读,私有网盘场景建议选私有读写),操作完成后确认存储桶状态为正常可用。
2. 在对象存储控制台的密钥管理模块,生成仅用于Cloudreve对接的专属AccessKey和SecretKey,同时复制保存对应存储桶的Endpoint、Region信息,注意不要泄露密钥内容,避免资产损失。
3. 登录Cloudreve管理员后台,进入「存储策略」页面,点击「添加存储策略」按钮,在弹出的存储类型列表中选择「S3兼容存储」选项,进入配置页面。
4. 按照页面提示依次填写提前准备好的Endpoint、AccessKey、SecretKey、Bucket名称、Region信息,同时根据业务需要配置存储路径规则、单文件大小限制、缓存过期时间等可选参数,确保所有必填项均已填写。
5. 所有参数填写完成后,点击页面底部的「测试连接」按钮,若页面提示连接成功则说明参数配置无误;若提示连接失败,返回上一步逐一核对参数是否存在错误。
6. 连接测试通过后保存存储策略,进入用户组管理或个人存储设置页面,将刚添加的S3存储策略分配给对应用户或用户组,保存权限配置。
7. 切换为普通用户账号登录Cloudreve,上传提前准备的测试文件,分别测试小文件上传、大文件断点续传、文件预览、文件下载、分享链接生成等功能,所有功能正常运行即代表对接完成。
四、常见错误
对接过程中大概率会遇到以下问题,可对照排查:
- Endpoint填写错误:常见为误填存储桶访问地址、多写后缀或拼写错误,解决办法是直接从对象存储控制台复制官方给出的对应区域Endpoint,不要手动输入。
- AccessKey或SecretKey错误:多为复制时带了多余空格、使用了已过期或被禁用的密钥,解决办法是重新生成新的密钥对,复制时注意删除前后多余空格,密钥泄露后需立即重置。
- Bucket名称不匹配:常见为填写了存储桶别名、大小写填写错误,解决办法是复制控制台展示的存储桶官方唯一名称,注意S3协议对Bucket名称大小写敏感。
- Region填写不匹配:误填其他区域的Region编码会导致连接失败,解决办法是和Endpoint对应,填写存储桶所属区域的正确编码,部分服务商无强制要求时可填默认值或留空。
- 权限不足上传失败:多为密钥未分配对应Bucket的读写权限、Cloudreve配置的单文件大小超过存储桶限制,解决办法是给密钥分配对应Bucket的完整读写权限,确保两边的单文件大小限制一致。
- 上传成功但访问403:常见为存储桶未开启公共读权限、防盗链规则屏蔽了Cloudreve所在域名,解决办法是调整存储桶访问权限,将Cloudreve域名加入防盗链白名单。
五、示例说明
以下为Cloudreve S3存储策略配置页的通用填写示例,所有参数均替换为你自己的实际信息即可:
- Endpoint:填写第三方对象存储服务商提供的对应区域访问域名,不要带存储桶前缀
- AccessKey:填写对象存储控制台生成的访问密钥ID
- SecretKey:填写对应AccessKey的密钥字符串
- Bucket:填写已创建的存储桶的官方唯一名称
- Region:填写存储桶所属区域的编码,无特殊要求可填写服务商给出的默认值
- 存储路径:可填写自定义的路径前缀,比如
cloudreve/user_files/,也可以留空直接存在存储桶根目录 - 访问控制:根据业务选择私有或公共读,公共资源类场景建议选公共读
- 跨域配置:如果需要开启前端直传功能,按照Cloudreve官方文档要求在对象存储控制台配置CORS跨域规则即可。
六、更简单的方案
如果不想自己搭建MinIO这类自建对象存储,也不想花时间维护存储服务器、处理存储扩容和带宽峰值问题,可以直接选择成熟的兼容S3协议的云对象存储服务,不需要自己运维,按需付费成本更低。如果你需要一个兼容S3协议、适合网盘系统存储源、资源站下载分发、图床存储的对象存储服务,可以了解 七彩云对象存储,它支持标准S3协议,对接Cloudreve不需要额外适配,适合需要低成本、低门槛接入存储分发服务的站长和开发者使用。
七、FAQ
Q1:Cloudreve开源版可以对接S3兼容的第三方对象存储吗?
A:可以,不管是开源版还是付费版的Cloudreve都原生支持S3兼容存储的接入,不需要额外安装插件,直接在存储策略模块按照流程配置即可。
Q2:对接第三方对象存储后,文件是存在Cloudreve服务器还是对象存储里?
A:对接完成后所有上传的文件都会直接存储在第三方对象存储的Bucket里,不会占用Cloudreve所在服务器的存储容量,下载流量也走对象存储的带宽,不会消耗Cloudreve服务器的带宽资源。
Q3:可以同时对接多个不同的第三方对象存储服务到同一个Cloudreve实例吗?
A:可以,你可以在Cloudreve的存储策略里添加多个不同的S3兼容存储策略,分别分配给不同的用户组或者使用场景,比如一个存储公开资源,一个存储私有用户文件,互相之间不会产生影响。
Q4:对接后之前存在Cloudreve本地的文件可以迁移到第三方对象存储里吗?
A:可以,Cloudreve官方提供了存储策略迁移工具,你可以按照官方文档的操作步骤,把本地存储的文件批量迁移到新添加的S3存储策略里,不需要手动重新上传。
八、总结
整个Cloudreve对接第三方S3兼容对象存储的流程非常清晰,只需要提前准备好S3接入凭证,在Cloudreve后台完成参数填写、连接测试、权限分配三个核心环节即可,全程不需要修改代码,普通站长半小时内就能完成配置。该方案适合用Cloudreve搭建私有网盘、公共资源站、下载站、图床等场景的用户,能大幅降低本地服务器的存储和带宽成本,同时对象存储的弹性扩容能力也能应对业务快速增长的存储需求,不用额外投入硬件运维成本。
想进一步了解这个项目?
访问官网查看产品能力、适用场景和最新服务信息。
访问官网