前往小程序,Get更优阅读体验!
立即前往
发布
社区首页 >专栏 >使用200M轻量+对象存储低成本搭建文件中转站

使用200M轻量+对象存储低成本搭建文件中转站

原创
作者头像
用户7028236
修改2025-01-21 10:00:33
修改2025-01-21 10:00:33
6701
举报
文章被收录于专栏:应用技术合集应用技术合集

腾讯云锐驰型轻量+对象存储实现低成本文件中转站

1. 简介

近日,腾讯云上架了200M轻量应用服务器(锐驰型轻量),不仅大碗,而且不限流量。国内2核2G运存,200M三网BGP宽带的服务器每月仅需45元,这在以往是令人难以想象的价格,腾讯云目前正在派放3.5折的轻量服务器续费优惠券,结合使用,上述配置每月仅需约16元 。

2. 正文

2.1 可行性分析

2.1.1 环境可行性

自从恢复省间/跨网流量结算以来,本就岌岌可危的互联环境更是雪上加霜,为了打击PCDN等行为,运营商正在加速收回家庭宽带的公网IP,这使得很多家庭NAS变得不可用。此时我们需要内网穿透等手段才能正常访问,我们也可以选择上云方案,将程序部署在服务器。而无论如何,都需要一个具有公网IP的服务器,物美价廉的轻量应用服务器便成了我们的首要选择。

2.1.2 技术可行性

本次轻量服务器提供了不限流量的200M高速宽带,而对象存储可以挂载到服务器本地,为我们提供了可无限扩展的存储空间,而腾讯云对同一区域的业务提供内网访问能力,我们可以通过服务器的内网读写对象存储,也就是说我们可以访问服务器,并在服务器内网中读取并下载对像存储的文件,整个过程是完全不消耗流量的,技术上完全可行。

2.1.3 经济可行性

为什么在开篇强调200M宽带呢?在此之前我们能在国内接触到的服务器往往都是个位数宽带的“小水管”,它们仅适合个人网站搭建,对于文件传输而言实在是捉襟见肘,曾经稳定的国内大宽带是我们遥不可及的存在,个人很难承担如此昂贵的价格

而且个人用户对于服务器宽带的使用率比较低,大多数人都只是突发需求,因此价格才是我们考虑的第一要素。腾讯云本次推出的200M轻量套餐,让大厂+大宽带+低价成为可能,云服务中流量成本是最高的,而上述一套“组合拳”,全程不产生付费流量,因此在经济层面是完全可行的。

2.2 运行环境介绍

工欲善其事必先利其器,在正式使用之前,我们先进行基础的环境搭配,由于CentOS系统早在去年正式停止维护,不在推荐大家使用,本文我们使用同为Linux发行版的Debian12进行演示

本项目所需底层服务包括腾讯云锐驰型轻量服务器、对象存储(COS),使用腾讯云DNSPOD完成域名解析,软件方面使用宝塔面板管理运行环境,使用Github开源项目FileCodeBox完成程序部署

2.3 开通必备服务

2.3.1 购买锐驰型轻量服务器

本文采用南京区域的“2核2G内存”套餐,首先在控制台完成购买,操作系统选择Debian12,设置我们想要的密码

购买服务器
购买服务器

在完成购买后,记得在安全组开放端口,因为默认是只开放个别常用端口,而我们的面板和程序都需要非常用端口,这里为了方便我们选择全部放行:

放行端口
放行端口

2.3.2 开通对象存储桶

完成服务器的购买后,我们前往对象存储板块,开通对象存储服务,地区选择南京:

创建存储桶
创建存储桶

2.3.3 新建腾讯云密钥

后续我们将对象存储的空间挂载到服务器本地磁盘,需要通过API进行管理,所以我们首先创建API密钥,为了安全起见,我们只给后续软件读写对象存储的权限,因此我们需要通过子账户的API操作后续功能

我们首先从腾讯云控制台右上角进入“访问管理”,点击用户列表新建一个子用户,这里可以选择快速新建

输入自定义的子账户名后,点击列表中的用户权限编辑图标,取消默认的AdministratorAccess,选择授予QcloudCOSFullAccess策略,这样就可以创建一个只能访问对象存储的子账户

给子账户授权策略
给子账户授权策略

而后在用户列表点击我们刚刚创建好的子账户,点击API密钥标签,新建一个密钥,这里一定要保存好,因为API密钥仅在创建时展示,后续遗忘或丢失,只能重新创建新的密钥

获取密钥
获取密钥

2.3.4 添加DNS解析(可选)

后续我们希望通过域名访问服务,所以在完成服务器购买后,我们可以使用DNSPOD预先给对应IP分配一个子域名,注意国内服务器需要绑定备案过的域名,如果你不想,也可以通过IP地址+端口号的形式访问(如1.2.3.4:8888)

2.4 安装运行环境

2.4.1 安装宝塔面板

我们访问宝塔面板的安装页面,根据提示完成面板安装

面板官方链接:https://www.bt.cn/new/download.html

输入指令后在SSH窗口输入“y”开始安装

安装宝塔面板
安装宝塔面板

完成安装后根据返回信息进入面板,此处可根据个人喜好调整组件,一般推荐“LNMP”组合

安装套件
安装套件

2.4.2 安装对象存储插件

宝塔面板与腾讯云深度合作,定制了一系列的功能插件,我们可以通过COSFS插件将开通的腾对象存储挂载到服务器本地磁盘,对其直接进行读写

安装COS插件
安装COS插件

然后在插件配置界面输入我们预先出创建好的子账户的API密钥,其中appid可以在主账号的账号信息中查询

完成输入后在列表选择刚刚创建好的对象存储,点击挂载就可以了,于是我们就可以看到对象存储已经成功挂载到本地,之后的读写操作就合并本地磁盘没有区别

完成挂载后,我们在文件模块,前往挂载的根目录,新建一个名为share的文件夹,后续会用到

对象存储挂载后
对象存储挂载后

2.4.3 安装Docker软件

宝塔面板包含Docker模块,为我们提供了可视化管理Docker的能力,免去了手敲代码可能带来的错误,这里我们使用默认安装方式即可

安装docker
安装docker

2.4.4 安装程序

我们前往Docker的线上镜像板块,搜索“FileCodeBox”

安装Docker镜像
安装Docker镜像

我们可以先拉取镜像,然后在本地镜像中创建容器

容器名称随便填写,为了方便外部访问,暴露对应端口,然后点击更多设置,将刚刚挂载好的对象存储路径/www/cosfs/file-box/share(路径只是示例,实际以你的为准)填写到挂载目录,然后容器目录为/app/data/share,这个是固定的不能修改,因为程序的存储路径是写死的

创建容器
创建容器

然后点击创建就大功告成了,其他参数由系统自动填写

2.5 测试运行

2.5.1 访问主页

而后我们打开服务器ip:端口号即可访问,如1.2.3.4:12345,其中1.2.3.4替换为你的服务器IP,12345为暴露出去的端口号

访问主页
访问主页

2.5.2 进入后台

而后我们访问如下地址进入后台管理界面:

http://ip:端口号/#/admin

访问后台
访问后台

根据官方文档提示,默认密码为:FileCodeBox2023,大家进入后台一定记得先改密码,然后也可以更改上传条件配置

2.5.3 上传文件

点击上传文件按钮,选择文件后开始上传

访问上传
访问上传

上传完成后,页面会返回一个提取码,我们可以通过二维码进行分享,也可以在上传历史中找到已经上传过的文件

2.5.4 下载文件

打开页面输入提取码,或者使用浏览器扫描二维码,即可成功提取文件,然后开始下载, 可以看到无论是上传还是下载都如飞速一般

访问下载
访问下载

3. 总结

至此本文告一段落,依托腾讯云+宝塔插件的整合能力,搭建过程快速方便,但是要提醒大家,虽然是200M不限流量的服务器,但我们不可用滥用噢,宽带成本如此高昂,稳定高速的前提是大家都合理共享宽带。

整个程序本质上还是个半成品,不过基本功能都有了,由于网上找不到令我满意的相关程序,我计划自己开发一个更完善的文件分享系统,如果不忙的话,26年之前应该会完成(当然有意外情况或者我懒就咕咕咕了),届时我会继续和大家开源分享,大家有什么功能需求也可以留言,我在开发时会考虑到

4. 参考内容

4.1 本文所需程序

4.1.1 宝塔面板

https://www.bt.cn/new/download.html

4.1.2 FileCodeBox

https://github.com/vastsa/FileCodeBox

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 腾讯云锐驰型轻量+对象存储实现低成本文件中转站
    • 1. 简介
    • 2. 正文
      • 2.1 可行性分析
      • 2.1.1 环境可行性
    • 2.3 开通必备服务
    • 3. 总结
    • 4. 参考内容
      • 4.1 本文所需程序
      • 4.1.1 宝塔面板
      • 4.1.2 FileCodeBox
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档