【发布时间】:2018-10-21 23:30:49
【问题描述】:
我正在使用 docker 容器,并为本地开发和生产环境提供 docker-compose 文件。我想为我的新应用特别是 Google Kubernetes Engine 试用 Google Cloud Platform。我的工具是 Docker for Mac 和本地机器上的 Kubernetes。
对于开发人员来说,能够更改代码并实时查看本地开发的更改非常重要。
用例:
后端开发人员对基本的 Flask API(或您使用的任何东西)进行更改,应该会立即看到重新加载的应用程序的更改。
前端开发人员对 HTML 布局进行更改,应该会立即在网页上看到更改。
目前我正在使用 docker-compose 文件将源代码挂载到本地容器。但是Kubernetes不支持相对路径挂载源码。
理想情况下我应该能够设置变量
Deployment.spec.templates.spec.containers.volumes.hostPath
作为我的仓库的相对路径。例如,在我们的团队中,开发人员将 repo 克隆到此文件夹:
/User/BACKEND_developer/code/project_repo
/User/FRONTEND_developer/code/project_repo
显然,您无法在对源代码进行微小更改后提交和构建映像。
那么,使用 Kubernetes 进行本地开发的最佳实践是什么?我需要一些额外的工具来为每个开发者修改 .yaml 文件吗?
【问题讨论】:
-
你检查过Skaffold吗?
-
Helm 允许您指定将被注入到 yaml 中的值覆盖。我们有一个 gitignored 的“values.local.yaml”文件,其中包含每个开发人员的主机路径
标签: docker kubernetes google-cloud-platform