为节点应用程序实现CI /部署pipe道
为了实现持续集成和TDD,我将很快在重写节点应用程序。
我也想devise和build立一个用于开发,分期和生产的部署pipe道。
目前我正在使用Shipit将更改推送到具有预configuration环境的不同实例。 我听说过部署Docker容器所需的环境,我想了解更多。
我正在看TravisCI和自动化testing/构build,并从我的理解,可以推动docker图像到构build成功后的registry。
我还在学习扩展,并且考虑了一个生产devise,该devise包含服务3个集群版本的节点应用程序,Redis集群和2个PostgreSQL节点的Google Cloud服务器/服务,每个服务位于负载平衡器后面。
我听说Kubernetes被用来pipe理和部署集装箱化的应用程序,但我很好奇它是如何融合在一起的。
在我的脑海里,我认为这个过程似乎如下:
- 在开发机器上提交更改 – 推送到存储库。
- TravisCI构build并运行testing(如何将迁移和推送到postgreSQL服务的变化?)推送到Google云容器registry中。
- loginGoogle容器引擎并使用Kubernetes运行应用程序。
- 那么Redis集群呢? PostgreSQL节点?
如果这个问题缺乏清晰度和知识,我会事先道歉,但是在我走之前,我正努力学习更多。
您是否考虑过Google Cloud Container Builder? 从Github仓库中设置一个触发器非常简单,它将启动一个新的基于更改(分支或标签)的构build。
作为构build的一部分,您可以将新图像推送到GCR。
而且你也可以部署到Kubernetes作为同一个版本的一部分。
- 无法从Google计算引擎实例运行gcloud docker push
- 无法在共享只读GCE永久磁盘的1个GKE节点上运行2个Kubernetes Pod
- 从BigQuery获取(stream)数据到R(Docker中的Rstudio服务器)的最佳方式是什么?
- 写入卷装时,Kubernetes pod内存不足
- Google云端容器:从Dockerfile创build一个docker容器
- 如何提高Kubernetes的安全性尤其是跨Pods?
- 将Google永久磁盘附加到Cloud SDK Docker容器
- Google容器引擎公开服务“网站无法访问”
- 如何通过unix套接字在Kubernetes中运行PHP?