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

Kubernetes中复用节点时Docker-in-Docker(DIND)连接不可用问题求助

Kubernetes中复用节点时Docker-in-Docker(DIND)连接不可用问题求助

大家好,最近我们在Jenkins流水线里用Docker-in-Docker(DIND)的时候碰到个挺棘手的问题,感觉问题根源不在Jenkins本身,而是Kubernetes容器的配置或者节点复用的环节出了状况,想请社区的朋友们帮忙分析分析。

我们的Pod配置是这样的:

apiVersion: v1
kind: Pod
spec:
  nodeSelector:
    role: e2e_only
  tolerations:
    - effect: NoSchedule
      key: e2e_only
      operator: Equal
      value: "true"
  securityContext:
    runAsUser: 0
  containers:
    - name: deploy-toolbox
      image: 999999.dkr.ecr.eu-west-1.amazonaws.com/deploy-toolbox:latest
      command: ['tail', '-f', '/dev/null']
      imagePullPolicy: Always
      env:
        - name: DOCKER_HOST
          value: 'tcp://localhost:2375'
      resources:
        requests:
          memory: '100Mi'
          cpu: '100m'
        limits:
          memory: '2Gi'
          cpu: '2000m'
    - name: docker-daemon
      image: docker:27.2.2-dind
      imagePullPolicy: IfNotPresent

具体的问题是:第一次在某个Kubernetes节点上运行这个Pod时,deploy-toolbox容器能正常通过tcp://localhost:2375连接到同Pod内的docker-daemon,DIND功能完全正常。但当这个节点被复用,再次运行相同的Pod时,deploy-toolbox就没法连上docker-daemon了,各种Docker操作都失败。

我初步怀疑可能是以下几个方向,但还没找到确切原因:

  • 节点上有没有残留的DIND相关端口占用或者进程?
  • DIND容器的网络配置在节点复用的时候有没有什么变化?
  • 是不是Pod的securityContext或者权限设置在节点复用场景下有冲突?

有没有朋友遇到过类似的情况?或者能给一些排查的思路和建议?感激不尽!

备注:内容来源于stack exchange,提问作者UP.

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.15 14:19:33