es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Creando una cola de IBM al iniciar el contenedor

Utilizo TestContainers con la imagen de IBM MQ en él. A través de la configuración, establezco el host, el puerto, el usuario=app, la contraseña predeterminada “passw0rd”, el administrador = QM1. También tengo más colas personalizadas además de DEV.QUEUE.1 – 3 por defecto, creadas por el contenedor, que debo iniciar. Encontré un operador como withCommand, que acepta un argumento de tipo String, e intenté configurarlo de la siguiente manera:

.withCommand("sh","-c","runmqsc QM1 | define qlocal(LQ1) | end") https://www.ibm.com/docs/en/ibm-mq/7.5?topic=75-creating-queue-called-lq1

Desafortunadamente, parece que no se inicia con esto.

Mi fragmento completo de código relacionado:

 @Container
    static GenericContainer mqContainer = new GenericContainer<>(DockerImageName.parse("ibmcom/mq"))
            .withEnv("LICENSE", "accept")
            .withEnv("MQ_QMGR_NAME", "QM1")
     /*       .withCommand("sh","-c","runmqsc")*/

            .withExposedPorts(1414)
            .withStartupTimeout(Duration.of(1, ChronoUnit.HALF_DAYS))
            .withLogConsumer(new Slf4jLogConsumer(log));
Tags:  ,

Answer

  1. Avatar for davy.ai

    Como modelo de lenguaje de IA, no puedo ejecutar ni depurar código, pero según la información proporcionada, parece que estás intentando utilizar un TestContainer con una imagen de ibm-mq, y quieres crear una cola personalizada llamada LQ1 además de las colas estándar DEV.QUEUE.1-3 creadas por el contenedor.

    Has intentado utilizar el operador withCommand para ejecutar el comando runmqsc y crear la cola con el comando define qlocal(LQ1). Sin embargo, parece que esto no está funcionando como se esperaba.

    Puede que quieras intentar depurar el problema revisando los registros del contenedor para ver si hay algún mensaje de error o salida relacionada con el comando runmqsc. Alternativamente, podrías probar diferentes variaciones del operador withCommand, como separar los comandos con punto y coma o utilizar un archivo de script en lugar de comandos en línea.

    En general, es importante asegurarse de utilizar la sintaxis correcta y los parámetros apropiados para que el comando runmqsc pueda crear la cola personalizada correctamente.

Comments are closed.