完全基于云服务的Web应用开发过程
这里介绍一种完全基于云服务的Web应用开发过程,各云服务基本都包含免费方案。对于一些小型的非商业化Web应用完全可以基于云服务0成本开发、部署、落地。
过程 & 工具
Demo | 开发 | 源码管理 | 测试 | 部署 | 数据存储 对象存储 |
CDN |
---|---|---|---|---|---|---|
工具介绍 & 案例
这里以博客为案例简单介绍整体过程以及各个云平台的特点。
本博客有两条线、分别将静态资源部署在了服务器和托管在了Vercel
平台仅在部署阶段有所不同分别:
- 基于
Github codespace
开发->
基于Github
管理源码->
基于Github Actions
部署服务至服务器->
服务器基于nginx
托管网站->
基于Cloudflare
做CDN
分发 - 基于
Github codespace
开发->
基于Github
管理源码->
基于Vercel
托管网站->
基于Cloudflare
做CDN
分发。
StackBlitz
一款非常不错的在线IDE,主要面向 Web 开发者。具有非常方便的依赖管理、编辑调试等功能。适用于一些Demo验证、BUG报告、案例展示等场景。
这里是一些示例:Collections by sz-p - StackBlitz
Github codespace
GitHub Codespaces 是托管在云中的开发环境,可通过配置文件自定义项目,并从浏览器、VS Code 或其他应用程序连接。
除了十分依赖网络环境之外,整体使用起来还是十分丝滑,云服务器性能本身也可以。对于之前就是Vscode
的用户用起来会十分方便。
GitHub
这里就不过多介绍了,全球最大的同性交友平台(代码托管平台/开源社区)
GitHub Actions
GitHub Actions 是一种持续集成和持续交付 (CI/CD) 平台,可用于自动执行生成、测试和部署管道。 您可以创建工作流程来构建和测试存储库的每个拉取请求,或将合并的拉取请求部署到生产环境。
Vercel
Vercel 提供了非常友好的网站托管服务。并且会颁发并自动更新 SSL 证书。用于托管小型应用十分合适。
LeanCloud
相较于传统的数据存储方案,ServerLess
的LeanCloud
有更高的集成度。MongoDB同样提供了免费的数据存储方案: Pricing | MongoDB可以结合场景合理应用。
七牛云
一个老牌的对象存储服务供应商,同样的还有对象存储服务-阿里云,亚马逊S3 云存储等。七牛云提供了0-10GB
免费标准存储方案。
Cloudflare
cloudflare
免费套餐包含DNS
和CDN
服务。但cloudflare
的CDN
一言难尽。必要的话可以考虑其他平台的收费方案。
总结
基于以上的各个云服务基本可以0成本的部署可公网访问的Web
服务,对于小型的非商业化项目完全足够。但同样的,对于任何云服务都应当持有不信任态度,一定要做好备份。
参考 & 引用
StackBlitz 搭建前端线上开发环境 - 知乎 (zhihu.com)
What is StackBlitz? | StackBlitz Docs
GitHub Codespaces 概述 - GitHub 文档