【云存储】使用OSS快速搭建个人网盘教程(上)

本文涉及的产品
对象存储 OSS,20GB 3个月
对象存储 OSS,恶意文件检测 1000次 1年
对象存储 OSS,内容安全 1000次 1年
简介: 【云存储】使用OSS快速搭建个人网盘教程(上)

一、基础概要

1. 主要的存储类型

不管是本地存储还是在云环境中,都有三种主要的存储类型: 块存储、文件存储和对象存储。

1.1 块存储

块存储是一种将数据存储为固定大小块的数据存储方式。

块存储将数据分成多个块,每个块的大小通常是固定的,比如4KB、8KB、16KB等。

块存储的数据结构相对固定,无法进行自由的调整。
块存储通常用于文件系统、关系型数据库等领域,常常用于存储大量的数据,以提高数据读写效率。

块存储的优势在于存储效率较高,可以快速存储和检索数据

1.2 文件存储

文件存储是一种将数据存储为文件的数据存储方式。

文件存储将数据分成多个文件,每个文件可以包含多个数据块。文件存储通常用于存储大量的数据,可以通过文件系统等方式进行管理和访问。

文件存储的优势在于可以灵活地管理和访问数据,并且可以支持大规模的数据存储和管理

1.3 对象存储

对象存储是一种新型的云存储服务,它将数据存储为对象的形式,可以更好地满足大量非结构化数据存储和管理的需求。

对象存储将数据分为多个层次,每个层次都有自己的命名空间和属性。每个对象都有一个唯一的标识符,可以通过这个标识符访问和管理数据。

对象存储经济高效,是一个非常适用于静态数据的存储系统,其灵活性和扁平性意味着它可以通过扩展来存储极大量的数据。对象具有足够的信息供应用快速查找数据,并且擅长存储非结构化数据。

2. 对象存储OSS

2.1 存储空间

用户用于存储对象(Object)的容器,所有的对象都必须隶属于某个存储空间,提供了标准存储、低频访问存储、归档存储、冷归档存储等存储类型。

个人网盘频繁的进行文件上传、下载、分享等操作;个人网盘需要频繁的进行文件上传、下载、分享等操作,该实验我们选择使用“标准存储”。

标准存储适用于各种社交、分享类的图片、音视频应用、大型网站、大数据分析等业务场景。

2.2 地域

OSS的数据中心所在物理位置。

阿里云地域选择可以遵循就近原则,优先选择更靠近用户群的地域节点。本实验地域优先选择“华东2(上海)” 。

image.png

2.3 对象

对象是OSS存储数据的基本单元,也被称为OSS的文件。

在个人网盘场景中,Object为存放在对象存储OSS Bucket中的照片文件、文本文件、视频文件等。

2.4 读写权限

通过Bucket ACL权限列表与权限描述,本实验设置Bucket ACL权限为私有,Bucket的拥有者可以对该Bucket内的文件进行读写操作,其他人无法访问该Bucket内的文件。

2.5 访问域名(Endpoint)

OSS对外服务的访问域名,Endpoint格式为:
外网Endpoint是oss-{Region}.aliyuncs.com
内网Endpoint是oss-{Region}-internal.aliyuncs.com

通过OSS内网地址访问OSS资源时,不收取流量费用。个人网盘场景中ECS实例部署的网盘软件可以调用OSS内网Endpoint。

2.6 访问密钥

简称AK,指的是访问身份验证中用到的AccessKeyId和AccessKeySecret。

OSS通过使用AccessKeyId和AccessKeySecret对称加密的方法来验证某个请求的发送者身份,可通过控制台创建AccessKey

AccessKey的来源有:

1、Bucket的拥有者申请的AccessKey。
2、被Bucket的拥有者通过RAM授权给第三方请求者的AccessKey。
3、被Bucket的拥有者通过STS授权给第三方请求者的AccessKey。

了解Endpoint和Accesskey的概念后,在使用SDK或工具时,需要配置访问域名(Endpoint)和访问密钥(Accesskey)。

2.7 常用功能

(1)创建存储空间

根据实际需求,创建不同类型的存储空间来存储不同的数据;

(2)上传文件

上传文件到OSS前,必须先在阿里云的任意一个地域创建一个存储空间。

创建存储空间后,您可以上传任意文件到该存储空间。有简单上传、分片上传、追加上传等方式;

image.png

(3)列举文件

Object上传成功后,默认按照字母序排列。可以列举出当前Bucket的所有Object、指定前缀的Object、指定个数的Object等;

(4)搜索文件

Object上传成功之后,可以通过搜索文件或者文件夹的方式进行搜索,快速查找目标文件;

(5)分享文件

文件上传至存储空间后,您可以将文件URL分享给第三方,供其下载或预览;

(6)下载文件

当文件(Object)上传至存储空间(Bucket)后,您可以将文件下载至浏览器默认路径或本地指定路径;

(7)删除文件

可以一次删除单个或者多个文件、碎片等。您可以定期删除过期文件,节省您的存储空间。

2.8 资源访问方式

阿里云对象存储OSS提供了多种访问及操作OSS资源的方式:阿里云控制台、OSS提供的工具、OSS提供的SDK。

image.png

3. 个人网盘架构

本实验使用ECS安装Cloudreve提供网盘服务,OSS提供存储服务。

当用户使用个人网盘时,访问部署Cloudreve ECS的公网IP地址即可完成文件上传、下载、删除、分享等服务。

image.png

3.1 Cloudreve

Cloudreve可快速构建出兼备自用或公用的网盘服务,通过多种存储策略的支持、虚拟文件系统等特性实现灵活的文件管理体验。

3.2 ossfs

ossfs能让您在Linux系统中,将对象存储OSS的存储空间(Bucket)挂载到本地文件系统中,能够像操作本地文件一样操作OSS的对象(Object),实现数据的共享。

二、基于OSS快速搭建个人网站

1. 登录OSS控制台

在阿里云台首页点击创建资源,会生成如下内容,AK ID和AK Secret

image.png

创建好之后,默认进入如下命令行界面,我们选择右侧的远程桌面
image.png

进入远程桌面后,单击桌面Chromium Web Browser图标,打开浏览器会自动打开阿里云RAM用户登录页面。

image.png

在登录界面输入刚刚生成资源中的用户名

image.png

输入密码

image.png

完成RAM用户登录后,然后单击浏览器阿里云控制台首页页面左上角图标

搜索框输入"OSS",单击搜索结果中的对象存储OSS,进入OSS管理控制台。

image.png

已经进入OSS管理控制台

image.png

2. 创建OSS Bucket

在OSS管理控制台,选择Bucket列表,单击创建Bucket,进行Bucket的创建。

image.png

创建Bucket时,填入Bucket名称,选择正确的地域,其它参数使用默认值,单击确认完成Bucket的创建。

这里名称我用九芒星的英文

ninemangstars

地域根据最开始生成的资源,找到对应的地域

image.png

个人网盘场景中需要和ECS实例处于同一个地域。这里用的上海

image.png

3. 安装Cloudreve

提交之后,在实验页面右侧导航栏,单击图标,切换至Web Terminal。

image.png

3.1 下载安装包

执行如下命令,下载cloudreve安装包。

wget https://labfileapp.oss-cn-hangzhou.aliyuncs.com/cloudreve_3.3.1_linux_amd64.tar.gz

wget 是Linux系统用于从Web下载文件的命令行工具。wget加上需要下载文件的链接,即可完成文件的下载。

image.png

返回结果如下所示,即完成cloudreve安装包的下载。

image.png

3.2 解压

下载完毕后,执行如下命令,解压cloudreve安装包。

tar -zxvf cloudreve_3.3.1_linux_amd64.tar.gz

tar是Linux系统用于解压与压缩命令,解压参数中

z表示配合解压.gz类型的压缩包
x表示解压缩
v表示显示解压缩详细信息
f表示被处理文件。

返回结果如下所示,即完成cloudreve安装包的解压。

image.png

3.3 授权

执行如下命令,给cloudreve授予权限。

chmod +x ./cloudreve

chmod用于改变文件或目录的访问权限,+x表示赋予可执行权限,下一步需要运行cloudreve程序,所以必须赋予cloudreve可执行权限。

执行如下命令,运行cloudreve。

./cloudreve

返回结果如下所示,可以看到初始管理员账号、初始管理员密码和监听端口。

初始密码是随机生成的,这需要记录初始管理员账号、密码和端口,后面会用到

image.png

初始管理员账号:admin@cloudreve.org
初始管理员密码:7jx2gsnr
开始监听 :5212

3.4 验证Cloudreve

网盘访问时,需要使用到公网IP,故需要获取ECS实例的公网地址。

通过实验室左侧导航栏,点击云产品资源,通过ECS云服务器下方弹性IP选项获取。

image.png

在本地浏览器中,打开,访问http://:

http://47.103.110.136:5212

进入登录页

image.png

依次输入初始化管理员账号和初始化管理员密码,单击登录。
image.png

登录成功

image.png

可以看到,后台接收到登录的日志

在终端中按下Ctrl+C键,停止cloudreve运行。

image.png

相关实践学习
借助OSS搭建在线教育视频课程分享网站
本教程介绍如何基于云服务器ECS和对象存储OSS,搭建一个在线教育视频课程分享网站。
目录
相关文章
|
7月前
|
存储 监控 API
oss教程
oss教程
291 1
|
运维 文件存储 对象存储
【运维知识进阶篇】用阿里云部署kod可道云网盘(配置Redis+MySQL+NAS+OSS)(三)
【运维知识进阶篇】用阿里云部署kod可道云网盘(配置Redis+MySQL+NAS+OSS)(三)
334 0
|
2月前
|
存储 Java 开发工具
【三方服务集成】最新版 | 阿里云OSS对象存储服务使用教程(包含OSS工具类优化、自定义阿里云OSS服务starter)
阿里云OSS(Object Storage Service)是一种安全、可靠且成本低廉的云存储服务,支持海量数据存储。用户可通过网络轻松存储和访问各类文件,如文本、图片、音频和视频等。使用OSS后,项目中的文件上传业务无需在服务器本地磁盘存储文件,而是直接上传至OSS,由其管理和保障数据安全。此外,介绍了OSS服务的开通流程、Bucket创建、AccessKey配置及环境变量设置,并提供了Java SDK示例代码,帮助用户快速上手。最后,展示了如何通过自定义starter简化工具类集成,实现便捷的文件上传功能。
【三方服务集成】最新版 | 阿里云OSS对象存储服务使用教程(包含OSS工具类优化、自定义阿里云OSS服务starter)
|
存储 运维 数据安全/隐私保护
【运维知识进阶篇】用阿里云部署kod可道云网盘(配置Redis+MySQL+NAS+OSS)(四)
【运维知识进阶篇】用阿里云部署kod可道云网盘(配置Redis+MySQL+NAS+OSS)(四)
324 0
|
存储 文件存储 对象存储
使用OSS快速搭建个人网盘
通过本实验,用户可学会如何创建OSS bucket,并利用oss自有的图形化工具来作为个人网盘进行上传下载等操作,帮助用户0代码文件上云。
|
7月前
|
存储 安全 API
阿里云——云存储:对象存储管理与安全
阿里云——云存储:对象存储管理与安全
579 0
|
存储 API 对象存储
使用OSS对象存储快速搭建个人网盘
使用OSS对象存储快速搭建个人网盘
788 1
|
存储 弹性计算 Linux
使用ECS和OSS搭建个人网盘
本场景主要介绍如何基于ECS和OSS快速搭建一个个人网盘。
|
对象存储
阿里云OSS如何对接外链网盘
阿里云OSS如何对接外链网盘
494 1
|
存储 弹性计算 开发工具
云存储Clouder认证:基于存储产品快速搭建网盘—课时7:基于对象存储OSS快速搭建网盘
云存储Clouder认证:基于存储产品快速搭建网盘—课时7:基于对象存储OSS快速搭建网盘