我正在尝试了解如何使用docker部署web应用程序并进行生产级部署。
我做了一个web应用程序,react作为前端,Nodejs作为后端。我使用Mangodb作为数据库。
我使用代理连接前端和后端,使它们开始相互通信。
web应用程序运行良好,因为我构建和API和路由通过前端。
我的目标:
使用Devops和CI/CD管道进行部署。
根据我的研究,最好的选择是:
使用码头工人- 使用docker
但是我仍然没有找到一个方法来部署整个web应用程序。
我应该部署前端和后端使用docker和设置github的行动?这是部署应用程序的正确方法吗?如果是,前端和后端如何相互通信?
options:使用docker部署前端和后端,并找出它们之间如何相互通信的方法。
我最后的经验是在heroku上部署后端,并使用该链接作为前端的代理,我通过netlify部署它。
选项2:使用circle-ci和docker组合部署前端和后端。
谁能建议处理这种情况的最好方法?和最好的资源查找在哪里我可以使用devops工具部署整个web应用程序。 感谢我想分享我的经验。这可能对你的问题有一点帮助。
您是否使用aws服务?对于我们的项目,我们使用aws。为了部署前端应用程序,我们将它们托管在S3存储桶中,并使用cloudfront作为边缘位置来服务请求。后端采用基于EC2启动类型的ECS集群。对于后端部署,需要docker来容器化每个应用程序映像并在ecs集群中创建任务。
使用CI/CD,我使用github, github web hook, codebuild和codepipeline。如果任何提交是通过拉请求进行的,这样的更改将通过web hook识别,然后运行代码构建和代码管道来构建和部署更改到相关环境。