如何更新部署到Kubernetes(EKS)的应用程序代码?

时间:2018-10-10 02:03:54

标签: docker kubernetes amazon-eks

我已经通过使用EKS https://github.com/kubernetes/examples/tree/master/guestbook-go

为来宾簿应用程序配置了集群。

并遵循官方教程 https://docs.aws.amazon.com/eks/latest/userguide/getting-started.html

假设我要修改public/index.html文件。在Docker文件中,我可以看到该文件已复制到容器中:

COPY ./public/index.html public/index.html

guestbook-controller.json中,我可以看到它所使用的图像: "image":"k8s.gcr.io/guestbook:v3",

修改index.html并部署此新版本的正确方法是什么? 我需要重建这张图片吗?那么,在哪里上传它以及如何在AWS上使用kubernetes工具进行部署呢?

非常感谢,作为Kubernetes的新手,我正在寻找学习它的好步骤

1 个答案:

答案 0 :(得分:2)

以下是从新级别设置新应用程序的高级步骤。

  
      
  1. 对存储库进行git克隆。

  2.   
  3. 在本地修改public / index.html。

  4.   
  5. 使用docker build ....

  6. 进行Docker构建   
  7. 将图像推送到注册表(https://hub.docker.com/https://cloud.google.com/container-registry/或其他位置)。该命令取决于注册表。另外,请确保图片是公开的。

  8.   
  9. 在guestbook-controller.json中适当更新图像。

  10.   
  11. 按照README.md中所述的步骤进行操作。

  12.   

如果要在已经运行的现有K8S应用程序中更新映像,则必须按照here进行滚动更新。

仅供参考.....无需创建图像,也可以通过将新的index.html复制到所有正在运行的Pod中来进行修改,如here所述。

仅供参考.....该示例使用了过时的ReplicationController(在guestbook-controller.json中提到),推荐使用Deployment