将Laravel + Vue SPA应用程序部署到AWS的最佳实践/方法

时间:2018-06-04 23:28:30

标签: laravel amazon-web-services vue.js deployment bitbucket

我有2个存储库位于Bitbucket - 后端(Laravel应用程序作为API和入口点)和前端(主应用程序前端 - VueJs应用程序)。我的目标是建立持续部署,以便只要在主服务器(或我选择的其他分支)中的某个存储库中推送某些内容,它就会触发某些内容,以便整个应用程序构建并到达AWS EC2服务器。

我考虑过/尝试了以下内容:

  • AWS CodePipeline和/或CodeDeploy。这看起来是一个很好的选择 因为服务器也在AWS中。但是,没有支持 因为Bitbucket开箱即用,所以它必须去Bitbucket 管道 - > AWS Lambda - > AWS S3 - > AWS CodePipeline / CodeDeploy - > AWS EC2。这似乎是一个非常漫长的旅程,我不确定是否 这无论如何都是一种很好的做法。
  • 使用Laravel Forge部署Laravel应用程序,并添加其他步骤来构建VueJS应用程序。这似乎是一个非常基本的解决方案, 然而,构建过程似乎在那里失败,因为它只需要很长时间 时间和崩溃没有错误(而我可以运行完全相同的过程 在我的本地计算机或其他地方托管的其他服务器上)。我不是 确定这是否与配置服务器的方式有关,方式 Forge运行部署脚本或服务器太弱而无法处理它。

我的主要问题是部署这些组件的应用程序的最佳实践是什么?我已经阅读了很多关于部署NodeJS应用程序或Laravel应用程序的教程/文章,但是没有获得有关此类场景的良好信息。

在本地构建前端应用程序和版本控制构建的JS文件会更好吗?或者我应该在Bitbucket中创建一个可以构建应用程序然后部署它的管道?或者最好只是版本控制和部署源文件,并将整个构建过程作为部署过程的最后一步,由托管应用程序本身的服务器完成?还有一些文章建议在S3存储桶中托管整个前端应用程序 - 这也是不好的做法吗?

感谢任何有用的帮助和资源!

0 个答案:

没有答案