搭建一个属于自己的云盘

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

前言


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
相关文章
|
14天前
|
存储 弹性计算 NoSQL
阿里云服务器云盘类型怎么选?ESSD AutoPL、ESSD和ESSD Entry云盘区别及选择参考
云盘是阿里云为云服务器ECS提供的数据块级别的块存储产品,采用分布式三副本机制,为ECS实例提供99.9999999%的数据可靠性保证。目前阿里云服务器可选的云盘中,主要以ESSD AutoPL、ESSD和ESSD Entry云盘为主,有的用户并不清楚他们之间有什么区别,主要区别在于它们的目标应用场景、提供的性能级别以及成本效益比,本文就为大家介绍他们之间的区别及选择参考。
131 15
|
存储 SQL 弹性计算
阿里云关系型数据库RDS存储类型区别(ESSD云盘、本地SSD盘和SSD云盘)
阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务。云数据库RDS提供三种数据存储类型:ESSD云盘、本地SSD盘和SSD云盘,本文介绍三种存储类型的区别及选购建议。
1164 0
阿里云关系型数据库RDS存储类型区别(ESSD云盘、本地SSD盘和SSD云盘)
|
25天前
|
存储 NoSQL 固态存储
阿里云服务器云盘选择参考,ESSD Entry云盘和Entry云盘区别
在我们选择阿里云服务器系统盘和数据盘的时候,有部分云服务器同时支持ESSD Entry云盘和ESSD云盘,对于部分初次接触阿里云服务器的用户来说,可能并不是很清楚他们之间的区别,因此不知道选择哪种更好更能满足自己场景的需求,本文为大家介绍一下阿里云服务器ESSD Entry云盘和ESSD云盘的区别及选择参考。
|
10天前
|
存储 Oracle 固态存储
阿里云服务器ESSD云盘性能级别详解
存储性能对于应用的运行效率和用户体验至关重要,阿里云作为领先的云服务提供商,为用户提供了多种存储解决方案,其中ESSD云盘以其高性能和灵活性备受关注。本文将详细介绍阿里云服务器ESSD云盘的四种性能级别——PL0、PL1、PL2和PL3,以及它们各自的单盘IOPS性能上限和容量大小等关键信息,帮助您更好地选择适合自身需求的存储方案。
|
3月前
|
弹性计算 固态存储 NoSQL
阿里云服务器系统盘和数据盘ESSD Entry、ESSD AutoPL和ESSD云盘区别、性能和价格整理
阿里云服务器系统盘有ESSD Entry、ESSD云盘及ESSD AutoPL三种选择,各自在性能和适用场景上有所不同。ESSD Entry云盘性价比高,适合开发与测试业务;ESSD AutoPL云盘实现容量与性能解耦,支持自定义预配置性能,适用于时延敏感或IO密集型场景;ESSD云盘则提供多种性能级别,适用于大型OLTP数据库和NoSQL数据库等。详情及价格参见阿里云官网。
239 8
|
5月前
|
存储 弹性计算 固态存储
阿里云服务器可选云盘ESSD AutoPL、ESSD云盘、SSD云盘区别参考
目前阿里云服务器的云盘有ESSD AutoPL、高效云盘、ESSD云盘、SSD云盘等可供选择,有的新手用户并不清楚他们之间的区别,因此也就不知道应该如何选择,因为不同种类的云盘在最大IOPS、最大吞吐量等性能上是有区别的,下面我们一起来他们之间的区别,这样就有助于我们选择适合自己需求的系统盘与数据盘了。
阿里云服务器可选云盘ESSD AutoPL、ESSD云盘、SSD云盘区别参考
|
7月前
|
存储 弹性计算 缓存
ecs使用ESSD云盘或SSD云盘
阿里云ECS中,ESSD和SSD云盘提供高性能存储。SSD云盘基于SSD技术,适合高I/O需求场景。ESSD云盘则采用NVMe SSD和智能缓存,优化低延迟和高随机读写性能,尤其适合数据库、实时交易等对延迟敏感的应用。若业务需要极致存储性能,ESSD是优选,但选择应基于实际需求、成本和性能指标。
143 3
|
弹性计算 固态存储 NoSQL
阿里云服务器ESSD Entry云盘与ESSD AutoPL、ESSD PL-X等其他云盘区别参考
最近阿里云新推出了一个ESSD Entry云盘,截止目前,阿里云服务器的云盘种类有ESSD AutoPL云盘、ESSD PL-X云盘、ESSD云盘、SSD云盘、ESSD Entry、高效云盘、普通云等,很多用户并不知道他们之前的区别,各个云盘的性能及主要适用场景是怎样的,本文就给大家介绍下他们之间的区别,以供参考和选择。
阿里云服务器ESSD Entry云盘与ESSD AutoPL、ESSD PL-X等其他云盘区别参考
|
弹性计算 Oracle 固态存储
阿里云服务器系统盘ESSD云盘性能级别PL怎么选择?
阿里云服务器ESSD云盘性能级别PL怎么选择?里云服务器ESSD云盘性能级别PL0、PL1、PL2和PL3怎么选择?不同性能级别对应的单盘IOPS性能上限、IO和吞吐量都不同,ESSD云盘容量越大可选择的PL级别越高,性能级别PL越高价格也越贵
542 0
阿里云服务器系统盘ESSD云盘性能级别PL怎么选择?
|
存储 弹性计算 固态存储
阿里云服务器系统盘收费价格(高效云盘/SSD云盘/ESSD云盘)
阿里云服务器系统盘类型分为高效云盘、SSD云盘和ESSD云盘,磁盘类型不同性能不同价格也不同。1G存储怎么收费?阿里云服务器系统盘怎么收费?