MQ

 View Only
  • 1.  Connecting to an MQ Queue from IBM ACE using a Docker Container

    Posted 18 days ago

    Hello,

    I am running an instance of MQ Explorer from a Docker container using an ibm-mqadvanced-server-dev:9.3.5.0-arm64 image as I am working on a Mac OS. I am unable to connect to my QM/channel.

    My container and QM are up and running:

    bash-4.4$ dspmq
    QMNAME(NewQM)                                             STATUS(Running)

    I created a new Queue and Channel and granted them all permissions: 

    SET AUTHREC PROFILE('ACE.SVRCONN') OBJTYPE(CHANNEL) PRINCIPAL('mqm') AUTHADD(ALL)
    SET AUTHREC PROFILE('ACE.INPUT.QUEUE') OBJTYPE(QUEUE) PRINCIPAL('mqm') AUTHADD(ALL)
    

    When I try to add the Channel to my IBM ACE MQ add-on I get the following error message: 

    I have no Firewall running on my Mac and I clearly have a channel set up:

        32 : DISPLAY CHANNEL(ACE.SVRCONN) CHLTYPE(SVRCONN)
    AMQ8414I: Display Channel details.
       CHANNEL(ACE.SVRCONN)                    CHLTYPE(SVRCONN)
       ALTDATE(2024-04-27)                     ALTTIME(17.48.22)
       CERTLABL( )                             COMPHDR(NONE)
       COMPMSG(NONE)                           DESCR( )
       DISCINT(0)                              HBINT(300)
       KAINT(AUTO)                             MAXINST(999999999)
       MAXINSTC(999999999)                     MAXMSGL(4194304)
       MCAUSER(mqm)                            MONCHL(QMGR)
       RCVDATA( )                              RCVEXIT( )
       SCYDATA( )                              SCYEXIT( )
       SENDDATA( )                             SENDEXIT( )
       SHARECNV(10)                            SSLCAUTH(OPTIONAL)
       SSLCIPH( )                              SSLPEER( )
       TRPTYPE(TCP)                         
    


    ------------------------------
    paddy o'dowd
    ------------------------------


  • 2.  RE: Connecting to an MQ Queue from IBM ACE using a Docker Container

    IBM Champion
    Posted 18 days ago

    You haven't mentioned a listener. Do you have a TCP/IP listener defined and running on your queue manager? You are trying to connect to port 1414 but is anything listening on port 1414?

    Cheers,

    Morag 



    ------------------------------
    Morag Hughson
    MQ Technical Education Specialist
    MQGem Software Limited
    Website: https://www.mqgem.com
    ------------------------------



  • 3.  RE: Connecting to an MQ Queue from IBM ACE using a Docker Container

    IBM Champion
    Posted 17 days ago

    Looks like he'll also be needing the channel authentication record to allow privileged users.

    @Morag,  I'll let you supply him the link for it, as you wrote the brief for it.



    ------------------------------
    Francois Brandelik
    ------------------------------



  • 4.  RE: Connecting to an MQ Queue from IBM ACE using a Docker Container

    Posted 11 days ago

    I set my SSL Channel Authentication to optional. Does this need to be changed to something else?

    SSLCAUTH(OPTIONAL)


    ------------------------------
    paddy o'dowd
    ------------------------------



  • 5.  RE: Connecting to an MQ Queue from IBM ACE using a Docker Container

    Posted 11 days ago

    This is what is listening on my 1414 port (sudo lsof -i :1414) :

    COMMAND    PID       USER   FD   TYPE             DEVICE SIZE/OFF NODE NAME

    com.docke    3457      *******  175u  IPv6 0xf99a2320bf8f4157      0t0  TCP *:ibm-mqseries (LISTEN)



    ------------------------------
    paddy o'dowd
    ------------------------------



  • 6.  RE: Connecting to an MQ Queue from IBM ACE using a Docker Container

    IBM Champion
    Posted 11 days ago

    Hi Paddy,

    I don't think I have managed to quite understand from your description where the queue manager resides in this setup. Your screenshot shows that you are trying to connect to localhost and port 1414 from MQ Explorer. You say that MQ Explorer is running inside a container. Is the queue manager also running inside the same container, hence the use of localhost?

    You've shown us output from the runmqsc command (your CHANNEL definition) so clearly runmqsc has managed to connect to the queue manager - presumably because it is using local bindings rather than a network (aka client) connection.

    If MQ Explorer is running inside the same container as the queue manager, then presumably you don't need to use a network connection to listener port 1414 and can just connect to it locally. If MQ Explorer is not running inside the same container as the queue manager, then I don't understand how localhost will work as a host name.

    You can no doubt see my confusion. Could you elaborate a little on where the queue manager is running, relative to the MQ Explorer so that we can further help you?

    Cheers,
    Morag



    ------------------------------
    Morag Hughson
    MQ Technical Education Specialist
    MQGem Software Limited
    Website: https://www.mqgem.com
    ------------------------------