gpt4 book ai didi

go - 是否可以在运行时替换 POD 中容器中的可执行文件?

转载 作者:IT王子 更新时间:2023-10-29 02:07:01 47 4
gpt4 key购买 nike

我正在 Ubuntu 上开发 Go 可执行文件并在 minikube 中运行 kubernetes 集群。 minikube 中运行的 pod+container 是基于 Ubuntu 的,我只想替换容器中的可执行文件。或多或少绕过了重新制作容器的需要,因为可执行文件是唯一需要更改的东西。当我的更改“准备就绪”时,我计划重新制作容器所基于的图像等,但那是在路上。

我真的希望迭代速度更快一些。

这可能吗?有没有更好的办法?

最佳答案

仅出于开发目的(非常棘手的解决方案),您可以让您的 Ubuntu-Go 容器运行 tail -f/dev/null 以防止它完成,并使用 hostPath 将包含可执行文件的路径挂载到容器中。您可以通过运行 kubectl exec 来运行您的 Go 应用程序,您对主机上的应用程序所做的任何更改都将反射(reflect)在容器中。每当可执行文件更新时,您都可以再次使用 kubectl exec 重新启动应用程序。

Here是关于如何使用 minikube 的 hostPath 的很好的自述文件。

请记住在生产环境中使用正确的二进制文件重建您的容器,定义正确的入口点,并修复您的部署/pod 定义以排除主机路径。

关于go - 是否可以在运行时替换 POD 中容器中的可执行文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55766203/

47 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com