【问题标题】:Dotnet 6 application on docker can't access IBM Mq queue managerdocker 上的 Dotnet 6 应用程序无法访问 IBM Mq 队列管理器
【发布时间】:2022-11-11 00:16:14
【问题描述】:

我有一个 dotnet 6 应用程序,就与 MQ 系列队列管理器的连接而言,它在本地机器上运行良好。但是当我在 linux docker 容器中托管应用程序时,应用程序无法与队列管理器建立连接并失败并出现错误:

MQRC_HOST_NOT_AVAILABLE 原因:2538

有什么建议或指示吗?

我想禁用容器内的防火墙,但 iptables 命令似乎不适用于带有 dotnet 6 映像的 linux docker 容器。

【问题讨论】:

  • 你能从 docker telnet 到队列管理器和端口吗?
  • telnet 也不工作....我试过 apt-get, sudo - 没有一个命令被识别
  • 听起来你有一个 docker 问题而不是 MQ 问题。一旦你解决了网络问题,如果你确实有 MQ 问题,你应该回来。
  • 队列管理器在哪里运行?也是在容器里吗?如果是这样,队列管理器容器是否与应用程序容器位于同一 docker 网络中?

标签: .net .net-core websphere ibm-mq mq


【解决方案1】:

@joshmc 和 @chughts - 感谢您的所有建议。 队列管理器在本地而不是在容器上。 我设法通过在 docker 容器中添加主机文件条目来解决我的问题。队列管理器客户端连接选项卡文件的主机名未解析为有效的 IP 地址。因此,我在 etc/hosts 中添加了一个映射来解决问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-09-24
    • 2021-01-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-05-14
    • 1970-01-01
    相关资源
    最近更新 更多