【发布时间】:2020-12-10 07:10:32
【问题描述】:
我正在尝试解析 kubernetes pod 中的 mx 记录。 dnsjava 库在容器外的 mac 和 ubuntu 上测试时可以工作,但部署后返回一个空数组。
需要在 k8s 或 docker 镜像中提供什么才能使其正常工作?
见https://github.com/dnsjava/dnsjava
编辑 1
Record[] records;
try {
records = new Lookup(mailDomain, Type.MX).run();
} catch (TextParseException e) {
throw new IllegalStateException(e);
}
if (records != null && records.length > 0) {
for (final Record record : records) {
MXRecord mx = (MXRecord) record;
//do something with mx...
}
} else {
log.warn("Failed to determine MX record for {}", mailDomain);
}
log.warn 总是在 K8s 中执行。 docker 镜像是openjdk:11-jdk-slim,即它是 Debian。我刚刚在 Docker 之外的 Debian 上进行了测试,效果也很好。
【问题讨论】:
-
如果它在 ubuntu 中工作,您是否在 ubuntu 容器中尝试过?你能否详细说明一下你是如何测试它的以及你收到了什么输出?
-
我已编辑以提供更多信息。没有输出,
run返回 null 或空数组。我通过调用应用程序提供的 API 进行测试,然后调用上述代码。我在容器内外调用相同的 API
标签: docker ubuntu kubernetes dns dnsjava