17.5.1 开发过程中在 Kubernetes 之外运行应用
嘿嘿.
连接到后台服务
- BACKEND_SERVICE_HOST
- BACKEND_SERVICE_PORT
连接到 API 服务器
- 用
kubectl cp命令复制 ServiceAccount 的 Secret 文件 - ambassador container, kubelet proxy
在开发过程中在容器内部运行应用
可以总是将本地文件系统通过 Docker 的 Volume 挂载到容器中 。这 样,当你给应用构建了 一 个新的 二 进制版本之后,你所 需要 做的事情就是 重启 这个 容器(在支持热部署 的情况下,甚 至 都不需要重启容器〕,不需要重新构建整个镜像 。
17.5.2 在开发过程中使用 Minikube
nb.
将本地文件挂载到 Minikube VM 然后再挂载到容器中
minikube mount
在 Minikube VM 中使用 Docker Daemon 来构建镜像
不需要将镜像推到镜像中心.
为了使用 Minikube 的 Docker Daemon ,只需要将你的 DOCKER_HOST 环境变量指向它:
$ eval $(minikube docker-env)
在本地构建镜像然后直接复制到 Minikube VM 中
$ docker save <image> | (eval $(minikube docker-env) && docker load)
这里注 意 确保 pod spec 中的 imagePullPoli cy 不要设置 为 Alwa ys ,因为这会导致从外部镜像中心拉取镜像,从而导致你复制过去的镜像的更改丢失 。
将 Minikube 和 Kubernetes 集群结合起来
nb.
17.5.3 发布版本和自动部署资源清单
可以将资源的 manifest 存放到 一 个版本控制系统中,这样可以方便做代码审查 ,审计跟踪,或者任何需要的时候回退更改 。在每次提交更改之后 ,可以使用 kubectl apply 命令将更改反映到部署的资源中 。
- kube-applier
17.5.4 使用 Ksonnet 作为编写 YAML/JSON manifest 文件的额外选择

还需要其他工具来将文件转换
$ jsonnet kubia.ksonnet
- ksonnet-lib
17.5.5 利用持续集成和持续交付
CI/CD
- Fabric8 (Jenkins)
