You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何为带有挂载卷的运行中Pod注入临时容器

为运行中Pod添加挂载共享卷的临时容器

1. 获取目标Pod名称

先找到Deployment对应的运行中Pod:

kubectl get pods -l app=<你的Deployment名称>

(替换<你的Deployment名称>为实际Deployment的app标签值,或者直接从输出里复制Pod名称)

2. 直接给运行中Pod添加带卷挂载的临时容器

使用kubectl debug命令,通过--volume-mount参数挂载Pod已有的卷(该参数要求kubectl版本1.23及以上):

kubectl debug <目标Pod名称> -it --image=<你的调试工具镜像> --container=debug-tool --volume-mount name=diagvol,mount-path=/diag
  • 替换<目标Pod名称>为步骤1中获取的Pod名
  • 替换<你的调试工具镜像>为自定义调试工具的镜像(比如用ubuntu临时调试)
  • name=diagvol必须和原Pod中定义的卷名完全一致,mount-path=/diag可根据需求调整,建议和主容器挂载路径保持一致以方便共享文件

3. 验证卷共享是否生效

进入临时容器后,可通过以下命令检查挂载状态:

df -h /diag

也可以在临时容器内创建测试文件,然后回到主容器验证:

# 在临时容器内创建文件
touch /diag/test-shared-file

# 退出临时容器后,执行以下命令查看主容器内的文件
kubectl exec <目标Pod名称> -c ubuntu -- ls /diag

若能看到test-shared-file,说明卷共享成功。

注意事项

  • 临时容器是附加到运行中的Pod实例上的,不能通过修改Deployment模板添加(Deployment管理的是Pod模板,修改模板会触发Pod重建,且Kubernetes禁止通过Deployment修改Pod的ephemeralContainers字段)
  • 确保kubectl版本不低于1.23,否则--volume-mount参数不可用

内容的提问来源于stack exchange,提问作者Deepanshu verma

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.17 21:22:46