skip to Main Content

I am trying to run ActiveMQ Artemis on my docker but i have been receiving many errors trying to get this to work. I am not sure if it is something to do with my yml file or not.

This the command i am using:
docker-compose up

This is my yml file:

version: '2'

services:

  artemis:
    image: quay.io/artemiscloud/activemq-artemis-broker
    ports:
      - "8161:8161"
      - "61616:61616"
      - "5672:5672"
    environment:
       ARTEMIS_USERNAME: "admin"
       ARTEMIS_PASSWORD: "admin"
    networks:
      - amqp-quickstart-network
networks:
  amqp-quickstart-network:

I am receiving this error and not sure how to work around this.

Attaching to infrastructure-artemis-1
infrastructure-artemis-1  | Creating Broker with args --role admin --name broker --allow-anonymous --http-host 172.19.0.2 --host 172.19.0.2  --force
infrastructure-artemis-1  | Cannot initialize queue:Function not implemented
infrastructure-artemis-1  |
infrastructure-artemis-1  | usage: artemis <command> [<args>]
infrastructure-artemis-1  |
infrastructure-artemis-1  | The most commonly used artemis commands are:
infrastructure-artemis-1  |     address    Address tools group (create|delete|update|show) (example ./artemis address create)
infrastructure-artemis-1  |     browser    It will browse messages on an instance
infrastructure-artemis-1  |     check      Check tools group (node|queue) (example ./artemis check node)
infrastructure-artemis-1  |     consumer   It will consume messages from an instance
infrastructure-artemis-1  |     create     creates a new broker instance
infrastructure-artemis-1  |     data       data tools group (print|recover) (example ./artemis data print)
infrastructure-artemis-1  |     help       Display help information
infrastructure-artemis-1  |     mask       mask a password and print it out
infrastructure-artemis-1  |     perf       Perf tools group (example ./artemis perf client)
infrastructure-artemis-1  |     producer   It will send messages to an instance
infrastructure-artemis-1  |     queue      Queue tools group (create|delete|update|stat|purge) (example ./artemis queue create)
infrastructure-artemis-1  |     transfer   Moves Messages from one destination towards another destination
infrastructure-artemis-1  |     version    print version information
infrastructure-artemis-1  |
infrastructure-artemis-1  | See 'artemis help <command>' for more information on a specific command.
infrastructure-artemis-1  |
infrastructure-artemis-1  | Running Broker
infrastructure-artemis-1  | /opt/amq/bin/launch.sh: line 47: /home/jboss/broker/bin/artemis: No such file or directory
infrastructure-artemis-1 exited with code 127

3

Answers


  1. Something is wrong with you docker-compose file(check network). Ican run it with simple one liner

    docker run -e AMQ_USER=admin -e AMQ_PASSWORD=admin -p8161:8161 --name artemis quay.io/artemiscloud/activemq-artemis-broker
    

    docker inspect shows(network)

    "NetworkSettings": {
        "Bridge": "",
        "SandboxID": "fdd6c31e6e984369e592b968c7eaa465ee67233dd8d8d3d048c9fc99898089f5",
        "HairpinMode": false,
        "LinkLocalIPv6Address": "",
        "LinkLocalIPv6PrefixLen": 0,
        "Ports": {
            "8080/tcp": null,
            "8161/tcp": [
                {
                    "HostIp": "0.0.0.0",
                    "HostPort": "8161"
                },
                {
                    "HostIp": "::",
                    "HostPort": "8161"
                }
            ],
            "8443/tcp": null
        },
    

    By the way I am on Ubuntu.

    Login or Signup to reply.
  2. Try changing the compose HOME var to /opt/amq

    Login or Signup to reply.
  3. Try to run with

      AMQ_EXTRA_ARGS: "--nio"
    

    This will switch the IO to plain Java. The emulation on M1 doesn’t work with the standard IO setting in the image.

    Alternatively use:

      AMQ_EXTRA_ARGS: "--nio --host 0.0.0.0 --http-host 0.0.0.0 --relax-jolokia"
    

    This will allow the console to be accessed as well, because otherwise Jolokia binds to the local address inside the container, only.

    User and pw are set via:

      AMQ_USER: "admin"
      AMQ_PASSWORD: "admin"
    

    see the image source at https://github.com/artemiscloud/activemq-artemis-broker-image/blob/main/modules/activemq-artemis-install/added/launch.sh

    Login or Signup to reply.
Please signup or login to give your own answer.
Back To Top
Search