首先,我对部署一无所知。这是我的应用程序:我使用Spring Boot和使用MongoLab的MongoDB获得了一个REST API后端。我的前端是使用React(webpack,cypress)构建的。我在同一个仓库中的gitlab上有这个完整的应用程序,带有不同的文件夹(即后端,前端)。我可以在哪里部署该应用程序?我想我需要分别部署那些服务。如果你们有任何建议,请给我一些教程,我可以照做。我可以使用哪个URL,例如api.example.xx作为后方,example.xx作为前方?任何建议表示赞赏。谢谢
我介绍下我使用阿里云的原生服务部署一个前后端分离的应用实践,我注册了一个域名360saas.com
1、前端React应用使用webpack构建后,可以部署到对象存储OSS上,新建一个OSS bucket存放构建好的前端资源文件,并对这个bucket开启https访问,获取外网访问链接; -- 使用OSS不用担心费用,5块钱的40G资源包,可以用半年;
2、开通阿里云CDN服务,配置一个assets.cdn.360saas.com的域名,映射到第一步获取的OSS前端资源对应的外网访问链接 —— 这样就解决了前端资源部署的问题,即所有对前端资源的访问请求,都走CDN; -- 使用CDN也不用担心费用,没有流量就没有费用
3、对于Spring Boot的应用,我建议通过云效rdc.alyun.com新建一个应用来进行应用的部署,同时云效还会自动关联阿里云代码托管平台code.aliyun.com,实现代码的远程托管。 云效的部署有两种方式: 第一种,使用阿里云的EDAS服务进行部署; 第二种,使用阿里云的容器服务K8S进行服务部署; -- 这两种部署方式适用于你没有一台包年的ECS的场景,就想运行下看看效果,几个小时就释放,也就产生少量ECI实例费用;EDAS和K8S都支持域名绑定;
4、如果对于3中的两种部署方式不满意,那就自己用docker来部署吧。 -- 前提是自己搞一个ECS,域名解析到你的ECS;
5、使用函数计算的http服务来部署,按访问次数付费,也是很简单的 -- 支持域名绑定;
最后,主页放在SpringBoot应用中,主页上的前端资源文件路径,就是用前面的cdn域名。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。