是否可以在Google Kubernetes Engine(GKE)中更新代码而不重新构建docker映像?

时间:2018-07-11 02:59:43

标签: docker kubernetes google-kubernetes-engine

我是GKE的新手。

总有没有更新我的代码新版本而无需重新构建docker映像的情况? 因为每次我都必须重新构建docker映像并将其上传到GKE上,所以我甚至对源代码进行了一些更改,这花费了我很多时间。 谢谢。

2 个答案:

答案 0 :(得分:5)

手动构建Docker图片-不是一个好主意... 您为此花太多时间也就不足为奇了。更好的方法-配置和部署任何CI / CD系统,它可以根据提交或合并请求自动生成映像或执行任何其他操作。当然,这将花费您几个小时,但是无论如何,您迟早都必须这样做。当前现实提供了太多这样的例子:

  • 假设您需要在部署前测试(单元/集成测试)您的应用
  • 假设您有一个以上的环境
  • 向前迈进,想象您的公司希望通过“ DevOps方式”开发应用程序
  • 很多其他情况

根据源代码的存储位置,可以选择最合适的CI / CD。例如,如果您将来源存储在GitLab中,那么GitLab CI可能是最好的来源

答案 1 :(得分:0)

可能有一些解决方法,但这取决于您的确切用例。我将指定一个用例,然后让您根据情况进行插值。

比方说,您有一个Docker容器运行使用二进制文件的Web应用程序,该二进制文件使用以下映像:false。不用用该映像启动容器,您可以执行的是运行一个ubuntu容器,将其执行到容器中,获取源代码,构建/编译并手动运行二进制文件。

这是一种非常棘手的处理方式。在开发阶段,我曾多次使用这种技术,但从未在生产环境中使用过。

请谨慎使用此方法。