容器部署
共 203 篇文章
DaemonSet 删节点标签后,Pod 为何仍被终止
DaemonSet会持续检查节点是否匹配模板。删标签后的Pod终止不由IgnoredDuringExecution或OnDelete阻止,须核对节点资格与管理记录。
Docker Compose down 报 active endpoints:共享网络仍被其他容器使用
Compose 停止前端时,共享网络仍有后端或数据库连接。核对端点、项目名与外部网络生命周期,避免误删依赖服务。
RUN 已生成目录,Docker COPY 仍报 file not found:源文件选错了位置
RUN 生成的目录不是普通 COPY 的上下文来源。按同阶段和跨阶段选择 RUN cp 或 COPY --from,核对最终产物路径与秘密处理。
Kubernetes Pod 显示 1/1,Ready 仍为 False:检查 readinessGates
容器 1/1 不等于 Pod 全部就绪。核对 readinessGates 与 conditions,定位负责组件的真实状态,避免伪造 True 或删除发布保护。
Docker Compose 配置了 env_file 仍提示变量未设置
Docker Compose 声明 env_file 后仍提示变量未设置,可能是 environment 的插值空值覆盖了文件内容。区分容器环境与 CLI 插值,按用途调整配置,并在重建服务前检查最终模型。
Helm 报 PodDisruptionBudget policy/v1beta1 不存在:修正真正的模板
Helm 报 PDB policy/v1beta1 不存在时,确认集群 API 与实际渲染模板,更新兼容 chart,核对 policy/v1 空选择器语义和中断预算。
Docker 使用数组入口后,Ctrl-C 仍无法结束 PID 1 服务
Linux 容器里的 PID 1 未设置相应信号处理时,不能依赖普通进程的默认退出行为。区分前台连接与日志跟随,用 init 验证,并单独检查业务清理和停止信号。
单副本 Deployment 更新卡在 Multi-Attach:检查新旧 Pod 的节点
单副本 Deployment 更新出现 Multi-Attach 时,检查新旧 Pod 节点与已绑定卷;按停机条件选择 Recreate,并核对实际脱离和数据。
Docker 已发布端口仍连不上:nREPL 监听在容器回环地址
nREPL 只监听容器回环时,已有 Docker 端口发布仍无法到达。调整应用 bind,并把宿主机入口限制到本地或受控 SSH 隧道。
CronJob 设置 Forbid 后,手动创建的多个 Job 仍同时运行
手动从 CronJob 模板创建 Job 不经过计划调度的并发检查,parallelism 也只作用于单个 Job。区分触发入口后,按人工维护或统一互斥方式控制重叠执行。
StatefulSet 缩容后 PVC 仍然 Bound:PV 的 Delete 不是缩容清理开关
StatefulSet 缩容后 PVC 默认可能保留。区分 whenScaled、声明删除与 PV 回收链,核对实际对象和数据保留要求,再选择受控清理。
删除 HPA 后副本数没恢复:重新接管 Deployment 的 replicas
删除 HPA 后 Pod 仍保持扩容规模时,核对目标 Deployment、其他规模写入方与部署清单,再安排缩容和副本管理权交接。
Docker tmpfs 已可写,非 root 进程仍报 Permission denied
核对临时挂载的实际 UID、GID 与权限,用 Compose tmpfs 选项匹配应用账户,并验证容器重建和重启后的状态。
Docker 退出 137,OOMKilled 却为 false:区分 SIGKILL 与内存不足
Docker 退出 137 并不直接证明内存耗尽。结合容器状态、事件、停止操作与实际宿主机记录,区分强杀、停止超时和 OOM,再决定修复与验收范围。
kubectl apply 切换 valueFrom 报错:旧 value 可能仍在对象里
本地已删value,更新补丁仍可能保留对象中的旧值。对照最终清单、现存对象与last-applied记录,明确清除字段后校验和滚动验收。
Docker macvlan 在局域网能访问,宿主机却连不上:检查 parent 隔离
局域网其他机器能访问 macvlan 容器,唯独宿主 parent 接口不能直连。区分内核隔离与其他故障,按目标地址约束选择 bridge 或宿主子接口路径。
Docker Compose 使用 host 网络时,ports 不生效或报不兼容
Compose 同时设置 network_mode: host 和 ports,可能报不兼容或忽略端口映射。根据实际需求选择普通网络或 host 模式,并核对监听端口、访问范围和依赖连接。
Kubernetes Service 增加第二个端口后报 name: Required value
多端口 Service 的每一项都需要独立名称。补齐 spec.ports[].name,区分服务端口名与 targetPort,并校验最终清单和端点映射。


