kubernetes - 获取有关 kubernetes pod 中容器内文件修改的通知
问题描述
目的:我想开发一个 CLI 工具,允许在本地机器和远程机器(kubernetes pod 中的容器)之间进行文件同步(当文件在任一机器上被修改时)。
我想知道当有人通过抨击正在运行的容器来更改应用程序代码时是否有任何方式(如事件触发)?
解决方案
要使用您的 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
虽然,就像评论中已经提到的那样:
在集群环境中直接编辑代码通常不是一个好主意 [...]
但如果你真的需要,这是一种方法。
让我知道它是否有帮助
推荐阅读
- javascript - chrome.runtime.onInstalled 不先触发?
- javascript - 如何在 NodeJS 模块中处理资产
- c++ - 如何使用 std::list 作为公开节点的列表的接口实现?
- flutter - Flutter 如何将变量设为私有并在构造函数中使用 @required 对其进行初始化
- java - 如何在线性时间内从arraylist中删除元素
- python - 从列表中删除相同的项目/元组
- python - 防止 Python 脚本失败
- java - Junit 5 集成测试在 maven 3.5.2 构建中失败
- jenkins - 几秒钟内的持续集成构建配置
- amazon-web-services - 我可以将假设规则策略限制为特定的 lambda,而不是一般的 lambda?