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

Rootless Podman跨Pod DNS解析问题:NPM无法通过Pod名访问Node-red

解决Podman跨Pod DNS解析问题(OpenSUSE Leap Micro 4.4.4)

针对你在OpenSUSE Leap Micro上Podman 4.4.4中,同一自定义网络下Pod无法通过名称解析的问题,可按以下步骤排查修复:

1. 确认自定义网络的DNS启用状态

首先检查public网络是否开启了DNS功能:

podman network inspect public | grep -i dns_enabled

如果输出不是"dns_enabled": true,则删除现有网络并重新创建(创建时显式启用DNS):

podman network rm public
podman network create --dns-enable=true public

2. 为Pod添加DNS别名

Podman默认会将Pod名称作为DNS别名,但部分环境下可能需要手动指定。重新创建Pod2时添加--dns-alias参数:

podman pod rm pod2
podman pod create --name pod2 --network public --dns-alias pod2
# 重新启动Node-red容器
podman run -d --pod pod2 --name my-node-red nodered/node-red:latest

3. 验证容器的DNS配置

进入NPM容器,检查DNS服务器是否指向Podman内置DNS:

podman exec -it nom cat /etc/resolv.conf

正常情况下,nameserver应该是自定义网络的网关IP(比如10.88.x.x),如果是外部DNS(如8.8.8.8),说明容器未使用Podman的DNS服务,需检查网络配置。

4. 测试DNS解析

在NPM容器内直接测试对pod2的解析:

podman exec -it nom nslookup pod2

如果能返回Pod2的IP,说明解析正常;若仍失败,尝试用容器名my-node-red测试,排查是否是Pod别名的问题。

5. 重启Podman服务

若以上步骤无效,重启Podman服务刷新网络配置:

  • 若为rootful模式:
systemctl restart podman
  • 若为rootless模式:
systemctl --user restart podman

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.05 00:52:55