搭建一个属于自己的云盘

本文涉及的产品
云数据库 Tair(兼容Redis),内存型 2GB
Redis 开源版,标准版 2GB
推荐场景:
搭建游戏排行榜
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
简介: 搭建一个属于自己的云盘

前言


kodbox是一款云存储程序,支持跨平台访问,可以用它来构建一套网盘存储系统,本文就跟大家分享下整个搭建过程,欢迎各位感兴趣的开发者阅读本文。


环境搭建


我们先去可道云官网下载服务端安装包,如下所示:


640.png

                               image-20210718225825408


下载成功后,我们将其解压出来,打开解压出来的文件夹如下所示:


640.png

                                 image-20210718230707638


这是一个PHP项目,因此我们需要搭建一套PHP运行环境。


PHP运行环境


如果你的设备已经安装了PHP环境,这一步可以跳过。


因为我对PHP不是很熟悉,本文直接使用集成工具MxSrvs,来构建这套环境,软件下载成功后,直接安装即可,安装完成后的界面如下所示:


640.png

                                 image-20210718234431362


序号1标注的地方默认是没有安装的,安装可道云时我们需要选择redis做缓存,因此需要安装下。


在扩展中点击redis即可


640.png

                                    image-20210718235952605


环境配置


我们装好必要的环境后,接下来我们来看下具体的配置,打开MxSrvs的配置编辑菜单,如下所示 :


640.png

                                       image-20210719000650960


配置nginx


软件集成的nginx,默认端口号是80,由于这个端口号已经被占用了,因此我么需要修改下端口号。


640.png

                               image-20210719000959555


点击上图中的序号1标注即可打开nginx的配置,我们找到listen:80;将80改为你想改的端口,此处改为82


640.png

                                     image-20210719001406559


紧接着,我们添加一个路径映射,指定一个端口号用于访问我们的下载好的php项目,如下图所示,添加一个虚拟主机。

640.png

                           image-20210719001624282


640.png

                          image-20210719002707907


  • 主机名称为此配置的名字
  • 文件名称为要访问的php文件名称
  • 项目位置为我们刚才下载的php项目位置


添加完成后,默认生成的配置不是我们需要的,我们需要将其修改下:


  • listen为访问端口号
  • server_name 为我们刚才填写的
  • root 为项目路径,我们需要指向项目的根目录


server {
  listen      83;
  server_name   kodbox; 
  root      /Users/likai/Documents/kodbox.1.21;
  #access_log   /Applications/MxSrvs/logs/kodbox.log;
  include     vhosts/_nginx.vhost.fpm;
}


上述配置是http访问,我还需要https访问,因此还需要再添加一个虚拟主机,配置如下所示:


  • ssl_certificate 为你的ssl证书文件所在路径(需要crt格式的证书)
  • ssl_certificate_key 为你的ssl证书key文件所在路径


server {
  listen      84 ssl;
  server_name   kodbox-https;
  ssl_certificate      /Users/likai/Documents/nginx-ssl-home.kaisir.cn/1_home.kaisir.cn_bundle.crt;
    ssl_certificate_key  /Users/likai/Documents/nginx-ssl-home.kaisir.cn/2_home.kaisir.cn.key;
    ssl_session_cache    shared:SSL:1m;
    ssl_session_timeout  5m;
    ssl_ciphers  HIGH:!aNULL:!MD5;
    ssl_prefer_server_ciphers  on;
  root      /Users/likai/Documents/kodbox.1.21;
  #access_log   /Applications/MxSrvs/logs/kodbox-https.log;
  include     vhosts/_nginx.vhost.fpm;
}


配置PHP


软件集成的PHP服务,包含了phpMyAdmin,其默认端口是80,我们需要将其改成自己需要的端口号,此处改为81


打开/Applications/MxSrvs/bin/nginx/conf/vhosts/localhost.vhost进行修改


# phpMyAdmin
server {
  listen      81;
  server_name   pma.mxss.com;
  root      /Applications/MxSrvs/www/_phpmyadmin;
  #access_log   /Applications/MxSrvs/logs/phpmyadmin.log;
  include     vhosts/_nginx.vhost.fpm;
}
# webgrind
server {
  listen      81;
  server_name   wg.mxss.com;
  root      /Applications/MxSrvs/www/_webgrind;
  #access_log   /Applications/MxSrvs/logs/webgrind.log;
  include     vhosts/_nginx.vhost.fpm;
}
# beanstalk-console
server {
  listen      81;
  server_name   bs.mxss.com;
  root      /Applications/MxSrvs/www/_beanstalk/public;
  #access_log   /Applications/MxSrvs/logs/beanstalk.log;
  include     vhosts/_nginx.vhost.fpm;
}


配置mysql


如果你的设备没有安装mysql,可以选择软件集成的mysql服务,默认端口号为3306,如果不冲突则无需做过多配置。


如果冲突的话,则需要改端口号,如下所示,将port所对应的值改为你需要的即可。


640.png

                                    image-20210719005317545


配置redis


由于我的设备上已经有了redis,默认端口号6379被占用了,因此我需要修改下端口号,如下所示,我将端口号改为了63790


640.png

                             image-20210719005617317


随后,我们需要修改下php的配置文件在其末尾添加:


extension=redis.so


php中使用redis需要安装php-redis插件(MxSrvs默认已经为我们安装了),这一步的目的就是为了让php可以识别到这个插件


启动项目


做完上述配置后,我们就可以启动项目了,我们打开MxSrvs,切换到“程序控制”菜单下,如下所示,根据自己的需要启动对应的服务即可。


640.png 

                                  image-20210719010859001


启动成功后,通过浏览器访问83端口,出现如下所示的界面就配置成功了,点击下一步继续进行初始化即可。


修改可道云端口号


如果你修改了mysql的端口号或者redis的端口号,初始化项目时可能会报错../app/autoload.php[2];Redis->flushAll0; NOAUTH Authentication required.,这是因为它使用的是默认的redis,还需要在可道云的配置文件中进行对应的修改。


我刚才还修改了redis的端口号,对应的也需要修改下可道云的端口号。


打开kodbox.1.21/config/setting_user.php文件:


  • DB_PORT 为你的mysql端口号
  • DB_USER 为你的mysql登陆用户名
  • DB_PWD 为你的mysql登陆密码
  • $config['cache']['redis']['port'] = '63790'; 为你的redis端口号(如果你选择了redis作为缓存这一项就会出现)


<?php 
$config['database'] = array (
  'DB_TYPE' => 'mysqli',
  'DB_HOST' => '127.0.0.1',
  'DB_PORT' => 3306,
  'DB_USER' => 'root',
  'DB_PWD' => 'xxxx',
  'DB_NAME' => 'kodbox',
  'DB_SQL_LOG' => true,
  'DB_FIELDS_CACHE' => true,
  'DB_SQL_BUILD_CACHE' => false,
);
$config['cache']['sessionType'] = 'file';
$config['cache']['cacheType'] = 'file';
$config['cache']['sessionType'] = 'redis';
$config['cache']['cacheType'] = 'redis';
$config['cache']['redis']['host'] = '127.0.0.1';
$config['cache']['redis']['port'] = '63790';


实现效果


完成上述配置后,刷新浏览器即可成功进入可道云主界面,如下所示:


640.png

                                    image-20210719011845567


下载客户端


可道云的客户端有android、ios、web、mac、windows,在其官网的下载界面即可下载对应的客户端。


640.png

                                 image-20210719012216783


写在最后


至此,文章就分享完毕了。


我是神奇的程序员,一位前端开发工程师。


  • 公众号无法外链,如果文中有链接,可点击下方阅读原文查看😊
相关实践学习
基于Redis实现在线游戏积分排行榜
本场景将介绍如何基于Redis数据库实现在线游戏中的游戏玩家积分排行榜功能。
云数据库 Redis 版使用教程
云数据库Redis版是兼容Redis协议标准的、提供持久化的内存数据库服务,基于高可靠双机热备架构及可无缝扩展的集群架构,满足高读写性能场景及容量需弹性变配的业务需求。 产品详情:https://www.aliyun.com/product/kvstore &nbsp; &nbsp; ------------------------------------------------------------------------- 阿里云数据库体验:数据库上云实战 开发者云会免费提供一台带自建MySQL的源数据库&nbsp;ECS 实例和一台目标数据库&nbsp;RDS实例。跟着指引,您可以一步步实现将ECS自建数据库迁移到目标数据库RDS。 点击下方链接,领取免费ECS&amp;RDS资源,30分钟完成数据库上云实战!https://developer.aliyun.com/adc/scenario/51eefbd1894e42f6bb9acacadd3f9121?spm=a2c6h.13788135.J_3257954370.9.4ba85f24utseFl
相关文章
|
存储 弹性计算 固态存储
阿里云服务器系统盘和数据盘云盘存储收费标准报价详单
阿里云服务器系统盘或数据盘可选高效云盘、SSD云盘、ESSD云盘或ESSD AutoPL,系统盘40G高效云盘一个月价格40元,按量价格是0.0196元/40GiB/小时,SSD云盘40G是40元/月,ESSD云盘PL0价格是一个月0.5元每GB
3258 0
阿里云服务器系统盘和数据盘云盘存储收费标准报价详单
|
存储 SQL 弹性计算
阿里云关系型数据库RDS存储类型区别(ESSD云盘、本地SSD盘和SSD云盘)
阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务。云数据库RDS提供三种数据存储类型:ESSD云盘、本地SSD盘和SSD云盘,本文介绍三种存储类型的区别及选购建议。
1113 0
阿里云关系型数据库RDS存储类型区别(ESSD云盘、本地SSD盘和SSD云盘)
|
2月前
|
弹性计算 固态存储 NoSQL
阿里云服务器系统盘和数据盘ESSD Entry、ESSD AutoPL和ESSD云盘区别、性能和价格整理
阿里云服务器系统盘有ESSD Entry、ESSD云盘及ESSD AutoPL三种选择,各自在性能和适用场景上有所不同。ESSD Entry云盘性价比高,适合开发与测试业务;ESSD AutoPL云盘实现容量与性能解耦,支持自定义预配置性能,适用于时延敏感或IO密集型场景;ESSD云盘则提供多种性能级别,适用于大型OLTP数据库和NoSQL数据库等。详情及价格参见阿里云官网。
196 8
|
4月前
|
存储 弹性计算 固态存储
阿里云服务器可选云盘ESSD AutoPL、ESSD云盘、SSD云盘区别参考
目前阿里云服务器的云盘有ESSD AutoPL、高效云盘、ESSD云盘、SSD云盘等可供选择,有的新手用户并不清楚他们之间的区别,因此也就不知道应该如何选择,因为不同种类的云盘在最大IOPS、最大吞吐量等性能上是有区别的,下面我们一起来他们之间的区别,这样就有助于我们选择适合自己需求的系统盘与数据盘了。
阿里云服务器可选云盘ESSD AutoPL、ESSD云盘、SSD云盘区别参考
|
4月前
|
Oracle NoSQL 固态存储
阿里云服务器ESSD Entry云盘与ESSD云盘选择指南:性能与场景解析
在我们选择阿里云服务器的时候,有部分云服务器同时支持ESSD Entry云盘和ESSD云盘,选择不同的云盘,价格也有所差异,有的用户还不清楚他们之间的区别,因此不知道选择哪种更好更能满足自己场景的需求,本文为大家介绍一下阿里云服务器ESSD Entry云盘和ESSD云盘的区别及选择参考。
阿里云服务器ESSD Entry云盘与ESSD云盘选择指南:性能与场景解析
|
6月前
|
存储 弹性计算 固态存储
阿里云服务器系统盘与数据盘ESSD AutoPL、ESSD云盘、SSD云盘区别及选择参考
阿里云系统盘与数据盘如何选择?目前阿里云服务器有ESSD AutoPL、高效云盘、ESSD云盘、SSD云盘可供选择,很多新手用户并不清楚他们之间的区别,也就不知道应该如何选择,因为不同的云盘在最大IOPS、最大吞吐量等性能上是有区别的,下面我们一起来他们之间的区别,这样就有助于我们选择适合自己需求的系统盘与数据盘了。
阿里云服务器系统盘与数据盘ESSD AutoPL、ESSD云盘、SSD云盘区别及选择参考
|
6月前
|
存储 固态存储 NoSQL
阿里云企业级云服务器实例、云盘、带宽、镜像选择参考
对于许多初次接触云服务的用户来说,在购买阿里云服务器的时候,并不清楚应该如何选择适合自己的实例规格、云盘、带宽和镜像等配置,因为很多用户以往只用过物理服务器,对于阿里云企业级服务器的实例规格、云盘和带宽等不知道如何选择,本文为大家简单介绍一下阿里云企业级服务器应该如何选择这些参数。
阿里云企业级云服务器实例、云盘、带宽、镜像选择参考
|
6月前
|
存储 弹性计算 缓存
ecs使用ESSD云盘或SSD云盘
阿里云ECS中,ESSD和SSD云盘提供高性能存储。SSD云盘基于SSD技术,适合高I/O需求场景。ESSD云盘则采用NVMe SSD和智能缓存,优化低延迟和高随机读写性能,尤其适合数据库、实时交易等对延迟敏感的应用。若业务需要极致存储性能,ESSD是优选,但选择应基于实际需求、成本和性能指标。
134 3
|
存储 弹性计算 固态存储
阿里云服务器云盘有何区别?(ESSD AutoPL、高效云盘、ESSD云盘、SSD云盘)
阿里云服务器云盘种类如何选?目前阿里云服务器有ESSD AutoPL、高效云盘、ESSD云盘、SSD云盘可供选择,很多新手用户并不清楚他们之间的区别,也就不知道应该如何选择,因为不同的云盘在最大IOPS、最大吞吐量等性能上是有区别的,下面我们一起来他们之间的区别,这样就有助于我们选择适合自己需求的系统盘与存储盘了。
阿里云服务器云盘有何区别?(ESSD AutoPL、高效云盘、ESSD云盘、SSD云盘)
|
弹性计算 Oracle 固态存储
阿里云服务器系统盘ESSD云盘性能级别PL怎么选择?
阿里云服务器ESSD云盘性能级别PL怎么选择?里云服务器ESSD云盘性能级别PL0、PL1、PL2和PL3怎么选择?不同性能级别对应的单盘IOPS性能上限、IO和吞吐量都不同,ESSD云盘容量越大可选择的PL级别越高,性能级别PL越高价格也越贵
522 0
阿里云服务器系统盘ESSD云盘性能级别PL怎么选择?