运维咖啡吧
享受技术带来的乐趣,体验生活给予的感动

免费服务清单|零成本上线并维护你的网站

有个朋友是「魔兽世界」游戏的资深玩家,从这游戏问世开始到现在玩儿了超过20年,绝对算得上是骨灰级,出于对游戏的喜爱,也收藏了大量的周边产品,为了收藏这些周边真金白银投入超百万,并且还系统的总结了所收藏周边的故事/来源/分类/稀有程度等等信息,非常专业。我觉得这些内容只是默默的躺在笔记里非常可惜,世界上肯定会有其他一些人对这些感兴趣,于是便有了下面的对话

没想到困住他的竟然是服务器费用,我当即就总结了这些年我用到的一些免费服务发给他,借助于这些免费的服务几乎可以不花一分钱上线网站。低成本或者无成本是网站活得久的关键,正是因为意识到了这一点,所以我的个人网站在上线之初就采用了几乎全免费的方案,除了买了个人域名之外,其他的都没有花钱,到现在已经稳定运行了超过七年,并且可以预见的是能继续稳定运行很多个七年

现在我把我用到的这份免费服务清单分享给你,希望你也能上线自己的网站,并且存活久一点

GitHub Pages

GitHub本身就是超好用的代码托管服务,它在程序员群体中的知名度应该是100%,我相信应该没有程序员还不知道它,只要你用GitHub,你就拥有了GitHub Pages。这是一个与你的代码仓库深度集成、一键开启的静态网站托管服务,无论是纯手写的HTML,还是用Vue、React等现代前端框架构建的单页应用,只要你能生成静态文件,把它往仓库里一推,网站就上线了,简单粗暴,极致优雅,对于所有开源项目来说,用它来做官方文档或主页再合适不过了

Cloudflare CDN

Cloudflare是全球最大的网络基础设施公司之一,提供了众多免费好用的服务,因此有赛博菩萨之称,其核心业务就是内容分发网络CDN,节点遍布全球,可以用来给网站加速,使用方法十分简单,需要注册一个Cloudflare账号,添加你的域名,然后根据提示,去你的域名注册商那里,将域名的DNS服务器NS记录修改为Cloudflare提供的地址即可,所有经过Cloudflare代理的域名默认就支持了CDN加速,使用Cloudflare托管域名的同时Cloudflare还免费提供强大的DDoS攻击防护能力,并可以隐藏你的源服务器IP地址,极大的提升网站的安全性,除此之外Cloudflare还会自动为你的域名提供免费的SSL证书,还能自动续期,这些都是免费的,被称赛博菩萨也算是实至名归了

我的域名ops-coffee.cn就是通过Cloudflare托管的,所以在前段时间网上大量爆出CDN流量被刷时,我就完全不担心,是Cloudflare给了我「放过他们,有种冲我来」的底气

Cloudflare Pages

除了CDN外我还用到了Cloudflare提供的另外两个免费服务,第一个是Cloudflare Pages,这是一个与Github Page类似的服务,但功能要更加强大,它可以连接你的GitHub或GitLab仓库,实现自动部署。同时依托于遍布全球的CDN网络,为你的网站提供免费的加速服务。更重要的是,它的免费套餐提供了更多高级功能,比如无限站点、无限带宽、一键集成分析,甚至还有一些边缘计算的玩法,用慷慨已经不足以形容它

Cloudflare R2

另外一个用到的Cloudflare免费服务是R2,Cloudflare R2是Cloudflare提供的一个兼容S3 API的对象存储服务,可以用来存储网站用到的图片、视频等文件,每月有10GB的免费存储空间,以及百万级的A类(写入、列出)和千万级的B类(读取)操作额度,对于绝大多数个人项目和中小型网站来说,完全够用,甚至绰绰有余。我把网站所有的图片、附件都放在了R2上,配合Cloudflare自家的免费CDN,不仅加载速度快,而且再也不用担心“房子归你,流量费归我”的情况了

Vercel

当静态网站已经满足不了你,你需要一些后端逻辑,比如处理表单提交、连接数据库时,Vercel就该登场了。Vercel的口号是“Develop. Preview. Ship.”,它为前端开发者提供了极致顺滑的开发和部署体验。它不仅能托管所有类型的静态网站,更强大的地方在于它对Serverless Functions的完美支持,你可以用Node.js等语言编写API,让你的网站动起来,尤其与它自家的框架Next.js配合更是天衣无缝。Vercel的免费额度很足,包括每月100G的带宽、100000次的Serverless函数调用等等,足以支撑一个日访问量不错的动态网站

Supabase

有了后端逻辑,自然就需要数据库来存储数据。想白嫖数据库?Supabase来了。Supabase提供了一整套后端即服务(BaaS)的解决方案,其核心是一个免费的PostgreSQL数据库。除此之外,它还提供了身份验证、即时API、对象存储、函数等功能。免费套餐包含一个共享的PostgreSQL数据库、5GB的存储和带宽以及每月5万的用户认证。它与上边的Vercel搭配非常完美,可以说是黄金组合,可以轻松地在Vercel的Serverless函数中调用Supabase的数据库和API,一个功能齐全的全栈应用就此诞生,而且还是免费的

我的个人网站流量统计用了开源的umami,就是部署在Vercel上的,使用了Supabase提供的数据库存储。部署非常方便,vercel支持许多github托管的项目一键部署到vercel,umami就是其中之一

ClawCloud

如果你的应用比较复杂,不是简单的Node.js或者静态页面,比如一个Java应用、一个PHP论坛,甚至一个需要特定环境的Python爬虫,怎么办?答案是:Docker。ClawCloud提供Docker容器托管服务,这意味着无论你的应用是什么语言、什么框架写的,只要你能把它打包成一个Docker镜像,它就能帮你运行。ClawCLoud每个月提供5美元的免费额度。这个额度足以让你7x24小时不间断地跑一个小型容器实例了。对于个人博客、API服务或者一些自动化任务来说,简直是绝配

我用Python的Django框架编写的个人博客后台就是打包成了Docker镜像,免费托管在Dockerhub,然后使用ClawCloud部署的,整条链路零成本

从最简单的静态页面,到需要后端逻辑的动态网站,再到可以容纳万物的Docker容器,上面这几个服务已经覆盖了我们开发和部署一个完整应用所需的所有场景,更为重要的是这一切都是免费的。我们正处在一个对开发者极其友好的时代,这些赛博菩萨们用实实在在的免费额度和强大的功能,为我们的创意插上了翅膀,让我们能够更加专注于创造本身,而不是被高昂的基础设施成本所束缚

以上这些都是我自己实际使用的,我觉得好才做推荐,当然肯定还有大量优秀的免费服务我还没有接触到,你如果用过一些不错的,欢迎在评论区留言分享