首页 > 解决方案 > 获取有关 kubernetes pod 中容器内文件修改的通知

问题描述

目的:我想开发一个 CLI 工具,允许在本地机器和远程机器(kubernetes pod 中的容器)之间进行文件同步(当文件在任一机器上被修改时)。

我想知道当有人通过抨击正在运行的容器来更改应用程序代码时是否有任何方式(如事件触发)?

标签: kubernetes

解决方案


要使用您的 pod 和本地机器创建同步目录,您可以使用sshd映像创建一个 sidecar 容器,将相同的卷挂载到两个容器,然后使用sshfs将卷从 pod 挂载到您的机器。

在这里 您可以找到如何创建共享卷的示例。

接下来,您可以使用 kubectl 将流量转发到sshd 容器

kubectl port-forward <POD_NAME> 2222:22

然后使用sshfs将 pod 的目录挂载到您的机器上,如下所示:

sshfs root@localhost:/volume my_local_dir -p 2222

您可以在此处找到有关 sshfs 的更多信息

虽然,就像评论中已经提到的那样:

在集群环境中直接编辑代码通常不是一个好主意 [...]

但如果你真的需要,这是一种方法。

让我知道它是否有帮助


推荐阅读