Git Product home page Git Product logo

activemq's Introduction

Table of Contents

Introduction

Dockerfile to build a ActiveMQ container image.

Version

Current Version: 5.14.3

Hardware Requirements

CPU

  • No stats avaible to say the number of core in function of messages

Memory

  • 512MB is too little memory, i think is to use ActiveMQ on test environment
  • 1GB is the standard memory size

You can set the memory that you need :

docker run --name='activemq' -it --rm \
	-e 'ACTIVEMQ_MIN_MEMORY=512' \
	-e 'ACTIVEMQ_MAX_MEMORY=2048'\
        -P
	webcenter/activemq:latest

This sample lauch ActiveMQ in docker with 512 MB of memory, and then ACtiveMQ can take 2048 MB of max memory

Storage

The necessary hard drive space depends if you use persistant message or not and the type of appender. Normaly, no need space for ActiveMQ because the most data are contains directly on memory. I think it depends on how you use ActiveMQ ;)

Contributing

If you find this image useful here's how you can help:

  • Send a Pull Request with your awesome new features and bug fixes
  • Help new users with Issues they may encounter
  • Send me a tip via Bitcoin or using Gratipay

Issues

Docker is a relatively new project and is active being developed and tested by a thriving community of developers and testers and every release of docker features many enhancements and bugfixes.

Given the nature of the development and release cycle it is very important that you have the latest version of docker installed because any issue that you encounter might have already been fixed with a newer docker release.

For ubuntu users I suggest installing docker using docker's own package repository since the version of docker packaged in the ubuntu repositories are a little dated.

Here is the shortform of the installation of an updated version of docker on ubuntu.

sudo apt-get purge docker.io
curl -s https://get.docker.io/ubuntu/ | sudo sh
sudo apt-get update
sudo apt-get install lxc-docker

Fedora and RHEL/CentOS users should try disabling selinux with setenforce 0 and check if resolves the issue. If it does than there is not much that I can help you with. You can either stick with selinux disabled (not recommended by redhat) or switch to using ubuntu.

If using the latest docker version and/or disabling selinux does not fix the issue then please file a issue request on the issues page.

In your issue report please make sure you provide the following information:

  • The host distribution and release version.
  • Output of the docker version command
  • Output of the docker info command
  • The docker run command you used to run the image (mask out the sensitive bits).

Installation

Pull the image from the docker index. This is the recommended method of installation as it is easier to update image. These builds are performed by the Docker Trusted Build service.

docker pull webcenter/activemq:5.14.3

You can also pull the latest tag which is built from the repository HEAD

docker pull webcenter/activemq:latest

Alternately you can build the image locally.

git clone https://github.com/disaster37/activemq.git
cd activemq
docker build --tag="$USER/activemq" .

Quick Start

You can launch the image using the docker command line :

  • For test purpose :
docker run --name='activemq' -it --rm -P \
webcenter/activemq:latest

The account admin is "admin" and password is "admin". All settings is the default ActiveMQ's settings.

  • For production purpose :
docker run --name='activemq' -d \
-e 'ACTIVEMQ_NAME=amqp-srv1' \
-e 'ACTIVEMQ_REMOVE_DEFAULT_ACCOUNT=true' \
-e 'ACTIVEMQ_ADMIN_LOGIN=admin' -e 'ACTIVEMQ_ADMIN_PASSWORD=your_password' \
-e 'ACTIVEMQ_WRITE_LOGIN=producer_login' -e 'ACTIVEMQ_WRITE_PASSWORD=producer_password' \
-e 'ACTIVEMQ_READ_LOGIN=consumer_login' -e 'ACTIVEMQ_READ_PASSWORD=consumer_password' \
-e 'ACTIVEMQ_JMX_LOGIN=jmx_login' -e 'ACTIVEMQ_JMX_PASSWORD=jmx_password' \
-e 'ACTIVEMQ_STATIC_TOPICS=topic1;topic2;topic3' \
-e 'ACTIVEMQ_STATIC_QUEUES=queue1;queue2;queue3' \
-e 'ACTIVEMQ_MIN_MEMORY=1024' -e  'ACTIVEMQ_MAX_MEMORY=4096' \
-e 'ACTIVEMQ_ENABLED_SCHEDULER=true' \
-v /data/activemq:/data/activemq \
-v /var/log/activemq:/var/log/activemq \
-p 8161:8161 \
-p 61616:61616 \
-p 61613:61613 \
webcenter/activemq:5.14.3

Or you can use fig. Assuming you have fig installed,

wget https://raw.githubusercontent.com/disaster37/activemq/master/fig.yml
fig up

Configuration

ACCESS

todo

QUEUE

todo

TOPIC

todo

Data Store

todo

BROKER

todo

Disk usage

todo

JMX

todo

Avaible Configuration Parameters

Please refer the docker run command options for the --env-file flag where you can specify all required environment variables in a single file. This will save you from writing a potentially long docker run command. Alternately you can use fig.

Below is the complete list of available options that can be used to customize your activemq installation.

  • ACTIVEMQ_NAME: The hostname of ActiveMQ server. Default to localhost

  • ACTIVEMQ_LOGLEVEL: The log level. Default to INFO

  • ACTIVEMQ_PENDING_MESSAGE_LIMIT: It is used to prevent slow topic consumers to block producers and affect other consumers by limiting the number of messages that are retained. Default to 1000

  • ACTIVEMQ_STORAGE_USAGE: The maximum amount of space storage the broker will use before disabling caching and/or slowing down producers. Default to 100 gb

  • ACTIVEMQ_TEMP_USAGE: The maximum amount of space temp the broker will use before disabling caching and/or slowing down producers. Default to 50 gb

  • ACTIVEMQ_MAX_CONNECTION: It's DOS protection. It limit concurrent connections. Default to 1000

  • ACTIVEMQ_FRAME_SIZE: It's DOS protection. It limit the frame size. Default to 104857600 (100MB)

  • ACTIVEMQ_ENABLED_SCHEDULER: Permit to enabled scheduler in ActiveMQ. Default to true

  • ACTIVEMQ_ENABLED_AUTH: Permit to enabled the authentification in queue and topic (no anonymous access). Default to false

  • ACTIVEMQ_MIN_MEMORY: The init memory in MB that ActiveMQ take when start (it's like XMS). Default to 128 (128 MB)

  • ACTIVEMQ_MAX_MEMORY: The max memory in MB that ActiveMQ can take (it's like XMX). Default to 1024 (1024 MB)

  • ACTIVEMQ_REMOVE_DEFAULT_ACCOUNT: It's permit to remove all default login on ActiveMQ (Webconsole, broker and JMX). Default to false

  • ACTIVEMQ_ADMIN_LOGIN: The login for admin account (broker and web console). Default to admin

  • ACTIVEMQ_ADMIN_PASSWORD: The password for admin account. Default to admin

  • ACTIVEMQ_USER_LOGIN: The login to access on web console with user role (no right on broker). Default to user

  • ACTIVEMQ_USER_PASSWORD: The password for user account. Default to user

  • ACTIVEMQ_READ_LOGIN: The login to access with read only role on all queues and topics.

  • ACTIVEMQ_READ_PASSWORD: The password for read account.

  • ACTIVEMQ_WRITE_LOGIN: The login to access with write role on all queues and topics.

  • ACTIVEMQ_WRITE_PASSWORD: The password for write account.

  • ACTIVEMQ_OWNER_LOGIN: The login to access with admin role on all queues and topics.

  • ACTIVEMQ_OWNER_PASSWORD: The password for owner account.

  • ACTIVEMQ_JMX_LOGIN: The login to access with read / write role on JMX. Default to admin

  • ACTIVEMQ_JMX_PASSWORD: The password for JMX account. Default to activemq

  • ACTIVEMQ_STATIC_TOPICS: The list of topics separated by comma witch is created when ActiveMQ start.

  • ACTIVEMQ_STATIC_QUEUES: The list of queues separated by comma witch is created when ActiveMQ start.

Advance configuration

For advance configuration, the best way is to read ActiveMQ documentation and created your own setting file like activemq.xml. Next, you can mount it when you run this image or you can create your own image (base on this image) and include your specifics config file.

The home of ActiveMQ is in /opt/activemq, so if you want to override all the setting, you can launch docker with -v /your_path/conf:/opt/activemq/conf

activemq's People

Contributors

burner1024 avatar disaster37 avatar eurekin avatar tomgag avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

activemq's Issues

Cannot build

$ docker build --tag="leo/activemq" .
Sending build context to Docker daemon 89.6kB
Step 1/23 : FROM webcenter/openjdk-jre:8
8: Pulling from webcenter/openjdk-jre
7dcf5a444392: Pulling fs layer
9eebba75a87f: Pulling fs layer
1f0440d87cc7: Pulling fs layer
dacd0555c1b4: Pulling fs layer
b0f19aa05a94: Pulling fs layer
dacd0555c1b4: Waiting
b0f19aa05a94: Waiting
1f0440d87cc7: Verifying Checksum
1f0440d87cc7: Download complete
9eebba75a87f: Verifying Checksum
9eebba75a87f: Download complete
dacd0555c1b4: Verifying Checksum
dacd0555c1b4: Download complete
7dcf5a444392: Verifying Checksum
7dcf5a444392: Download complete
7dcf5a444392: Pull complete
9eebba75a87f: Pull complete
1f0440d87cc7: Pull complete
dacd0555c1b4: Pull complete
b0f19aa05a94: Verifying Checksum
b0f19aa05a94: Download complete
b0f19aa05a94: Pull complete
Digest: sha256:3acb2dffee948ac1c83df9fedfb138f3a13d1e9b708aa6946cffb1e7708801a4
Status: Downloaded newer image for webcenter/openjdk-jre:8
---> 9ef946e60162
Step 2/23 : MAINTAINER Sebastien LANGOUREAUX [email protected]
---> Running in b6dc1563f45d
Removing intermediate container b6dc1563f45d
---> 7132540067b5
Step 3/23 : ENV ACTIVEMQ_CONFIG_DIR /opt/activemq/conf.tmp
---> Running in a6303ad4fd69
Removing intermediate container a6303ad4fd69
---> af4a049e3ae4
Step 4/23 : ENV ACTIVEMQ_DATA_DIR /data/activemq
---> Running in 3655bf4c7a48
Removing intermediate container 3655bf4c7a48
---> 07f9b0088610
Step 5/23 : RUN apt-get update && apt-get install --no-install-recommends -y python-testtools python-nose python-pip vim curl supervisor logrotate locales && update-locale LANG=C.UTF-8 LC_MESSAGES=POSIX && locale-gen en_US.UTF-8 && dpkg-reconfigure locales && rm -rf /var/lib/apt/lists/*
---> Running in 0f2282462cbb
Ign http://archive.ubuntu.com wily InRelease
Ign http://archive.ubuntu.com wily-updates InRelease
Ign http://archive.ubuntu.com wily-security InRelease
Ign http://archive.ubuntu.com wily Release.gpg
Ign http://archive.ubuntu.com wily-updates Release.gpg
Ign http://archive.ubuntu.com wily-security Release.gpg
Ign http://archive.ubuntu.com wily Release
Ign http://archive.ubuntu.com wily-updates Release
Ign http://archive.ubuntu.com wily-security Release
Err http://archive.ubuntu.com wily/main Sources
404 Not Found [IP: 91.189.88.149 80]
Err http://archive.ubuntu.com wily/restricted Sources
404 Not Found [IP: 91.189.88.149 80]
Err http://archive.ubuntu.com wily/universe Sources
404 Not Found [IP: 91.189.88.149 80]
Err http://archive.ubuntu.com wily/main amd64 Packages
404 Not Found [IP: 91.189.88.149 80]
Err http://archive.ubuntu.com wily/restricted amd64 Packages
404 Not Found [IP: 91.189.88.149 80]
Err http://archive.ubuntu.com wily/universe amd64 Packages
404 Not Found [IP: 91.189.88.149 80]
Err http://archive.ubuntu.com wily-updates/main Sources
404 Not Found [IP: 91.189.88.149 80]
Err http://archive.ubuntu.com wily-updates/restricted Sources
404 Not Found [IP: 91.189.88.149 80]
Err http://archive.ubuntu.com wily-updates/universe Sources
404 Not Found [IP: 91.189.88.149 80]
Err http://archive.ubuntu.com wily-updates/main amd64 Packages
404 Not Found [IP: 91.189.88.149 80]
Err http://archive.ubuntu.com wily-updates/restricted amd64 Packages
404 Not Found [IP: 91.189.88.149 80]
Err http://archive.ubuntu.com wily-updates/universe amd64 Packages
404 Not Found [IP: 91.189.88.149 80]
Err http://archive.ubuntu.com wily-security/main Sources
404 Not Found [IP: 91.189.88.149 80]
Err http://archive.ubuntu.com wily-security/restricted Sources
404 Not Found [IP: 91.189.88.149 80]
Err http://archive.ubuntu.com wily-security/universe Sources
404 Not Found [IP: 91.189.88.149 80]
Err http://archive.ubuntu.com wily-security/main amd64 Packages
404 Not Found [IP: 91.189.88.149 80]
Err http://archive.ubuntu.com wily-security/restricted amd64 Packages
404 Not Found [IP: 91.189.88.149 80]
Err http://archive.ubuntu.com wily-security/universe amd64 Packages
404 Not Found [IP: 91.189.88.149 80]
W: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/wily/main/source/Sources 404 Not Found [IP: 91.189.88.149 80]

W: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/wily/restricted/source/Sources 404 Not Found [IP: 91.189.88.149 80]

W: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/wily/universe/source/Sources 404 Not Found [IP: 91.189.88.149 80]

W: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/wily/main/binary-amd64/Packages 404 Not Found [IP: 91.189.88.149 80]

W: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/wily/restricted/binary-amd64/Packages 404 Not Found [IP: 91.189.88.149 80]

W: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/wily/universe/binary-amd64/Packages 404 Not Found [IP: 91.189.88.149 80]

W: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/wily-updates/main/source/Sources 404 Not Found [IP: 91.189.88.149 80]

W: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/wily-updates/restricted/source/Sources 404 Not Found [IP: 91.189.88.149 80]

W: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/wily-updates/universe/source/Sources 404 Not Found [IP: 91.189.88.149 80]

W: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/wily-updates/main/binary-amd64/Packages 404 Not Found [IP: 91.189.88.149 80]

W: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/wily-updates/restricted/binary-amd64/Packages 404 Not Found [IP: 91.189.88.149 80]

W: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/wily-updates/universe/binary-amd64/Packages 404 Not Found [IP: 91.189.88.149 80]

W: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/wily-security/main/source/Sources 404 Not Found [IP: 91.189.88.149 80]

W: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/wily-security/restricted/source/Sources 404 Not Found [IP: 91.189.88.149 80]

W: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/wily-security/universe/source/Sources 404 Not Found [IP: 91.189.88.149 80]

W: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/wily-security/main/binary-amd64/Packages 404 Not Found [IP: 91.189.88.149 80]

W: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/wily-security/restricted/binary-amd64/Packages 404 Not Found [IP: 91.189.88.149 80]

W: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/wily-security/universe/binary-amd64/Packages 404 Not Found [IP: 91.189.88.149 80]

E: Some index files failed to download. They have been ignored, or old ones used instead.
The command '/bin/sh -c apt-get update && apt-get install --no-install-recommends -y python-testtools python-nose python-pip vim curl supervisor logrotate locales && update-locale LANG=C.UTF-8 LC_MESSAGES=POSIX && locale-gen en_US.UTF-8 && dpkg-reconfigure locales && rm -rf /var/lib/apt/lists/*' returned a non-zero code: 100

Docker container not running

According to documentation, the container has to expose an admin endpoint: http://127.0.0.1:8161/admin/, but seems the container not start completely, so that I cant access it.

docker run --name='activemq.local' -it --rm -P webcenter/activemq
WARNING: The requested image's platform (linux/amd64) does not match the detected host platform (linux/arm64/v8) and no specific platform was requested
2021-05-13 13:35:37,701 CRIT Supervisor running as root (no user in config file)
2021-05-13 13:35:37,703 WARN Included extra file "/etc/supervisor/conf.d/cron.conf" during parsing
2021-05-13 13:35:37,703 WARN Included extra file "/etc/supervisor/conf.d/activemq.conf" during parsing
2021-05-13 13:35:37,721 INFO RPC interface 'supervisor' initialized
2021-05-13 13:35:37,721 CRIT Server 'unix_http_server' running without any HTTP authentication checking
2021-05-13 13:35:37,722 INFO supervisord started with pid 1
2021-05-13 13:35:38,735 INFO spawned: 'cron' with pid 36
2021-05-13 13:35:38,744 INFO spawned: 'activemq' with pid 38
2021-05-13 13:35:39,972 INFO success: cron entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
2021-05-13 13:35:39,973 INFO success: activemq entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
2021-05-13 13:35:40,529 INFO exited: activemq (exit status 139; not expected)
2021-05-13 13:35:41,543 INFO spawned: 'activemq' with pid 163
2021-05-13 13:35:42,834 INFO success: activemq entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
2021-05-13 13:35:46,839 INFO exited: activemq (exit status 139; not expected)
2021-05-13 13:35:47,848 INFO spawned: 'activemq' with pid 302
2021-05-13 13:35:49,146 INFO success: activemq entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
2021-05-13 13:35:55,113 INFO exited: activemq (exit status 139; not expected)
2021-05-13 13:35:56,126 INFO spawned: 'activemq' with pid 457
2021-05-13 13:35:57,435 INFO success: activemq entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
2021-05-13 13:36:02,248 INFO exited: activemq (exit status 139; not expected)
2021-05-13 13:36:03,262 INFO spawned: 'activemq' with pid 611
2021-05-13 13:36:04,533 INFO success: activemq entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
2021-05-13 13:36:08,819 INFO exited: activemq (exit status 139; not expected)
2021-05-13 13:36:09,833 INFO spawned: 'activemq' with pid 756
2021-05-13 13:36:11,112 INFO success: activemq entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
2021-05-13 13:36:11,657 INFO exited: activemq (exit status 139; not expected)
2021-05-13 13:36:12,668 INFO spawned: 'activemq' with pid 894
2021-05-13 13:36:13,949 INFO success: activemq entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
2021-05-13 13:36:18,518 INFO exited: activemq (exit status 139; not expected)
2021-05-13 13:36:19,532 INFO spawned: 'activemq' with pid 1046
2021-05-13 13:36:20,805 INFO success: activemq entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
2021-05-13 13:36:22,336 INFO exited: activemq (exit status 139; not expected)
2021-05-13 13:36:23,349 INFO spawned: 'activemq' with pid 1184
2021-05-13 13:36:24,646 INFO success: activemq entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
2021-05-13 13:36:25,210 INFO exited: activemq (exit status 139; not expected)
2021-05-13 13:36:26,222 INFO spawned: 'activemq' with pid 1322
2021-05-13 13:36:27,509 INFO success: activemq entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
2021-05-13 13:36:28,062 INFO exited: activemq (exit status 139; not expected)
2021-05-13 13:36:29,076 INFO spawned: 'activemq' with pid 1460
2021-05-13 13:36:30,357 INFO success: activemq entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
2021-05-13 13:36:30,905 INFO exited: activemq (exit status 139; not expected)
2021-05-13 13:36:31,919 INFO spawned: 'activemq' with pid 1598
2021-05-13 13:36:33,215 INFO success: activemq entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
2021-05-13 13:36:33,771 INFO exited: activemq (exit status 139; not expected)
2021-05-13 13:36:34,781 INFO spawned: 'activemq' with pid 1736
2021-05-13 13:36:36,077 INFO success: activemq entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
2021-05-13 13:36:39,533 INFO exited: activemq (exit status 139; not expected)
2021-05-13 13:36:40,542 INFO spawned: 'activemq' with pid 1874
2021-05-13 13:36:41,846 INFO success: activemq entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)

My docker is running on a Mac M1 chip

Client: Docker Engine - Community
Cloud integration: 1.0.10
Version: 20.10.5
API version: 1.41
Go version: go1.13.15
Git commit: 55c4c88
Built: Tue Mar 2 20:13:00 2021
OS/Arch: darwin/amd64 (rosetta)
Context: default
Experimental: true

Server: Docker Engine - Community
Engine:
Version: 20.10.5
API version: 1.41 (minimum version 1.12)
Go version: go1.13.15
Git commit: 363e9a8
Built: Tue Mar 2 20:16:48 2021
OS/Arch: linux/arm64
Experimental: false
containerd:
Version: 1.4.4
GitCommit: 05f951a3781f4f2c1911b05e61c160e9c30eaa8e
runc:
Version: 1.0.0-rc93
GitCommit: 12644e614e25b05da6fd08a38ffa0cfe1903fdec
docker-init:
Version: 0.19.0
GitCommit: de40ad0

Ubuntu 15.10 is EOL

Many errors trying to create the Docker image.

W: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/wily/main/source/Sources  404  Not Found [IP: 91.189.88.162 80]

W: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/wily/restricted/source/Sources  404  Not Found [IP: 91.189.88.162 80]

W: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/wily/universe/source/Sources  404  Not Found [IP: 91.189.88.162 80]

W: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/wily/main/binary-amd64/Packages  404  Not Found [IP: 91.189.88.162 80]

W: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/wily/restricted/binary-amd64/Packages  404  Not Found [IP: 91.189.88.162 80]

W: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/wily/universe/binary-amd64/Packages  404  Not Found [IP: 91.189.88.162 80]

W: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/wily-updates/main/source/Sources  404  Not Found [IP: 91.189.88.162 80]

W: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/wily-updates/restricted/source/Sources  404  Not Found [IP: 91.189.88.162 80]

W: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/wily-updates/universe/source/Sources  404  Not Found [IP: 91.189.88.162 80]

W: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/wily-updates/main/binary-amd64/Packages  404  Not Found [IP: 91.189.88.162 80]

W: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/wily-updates/restricted/binary-amd64/Packages  404  Not Found [IP: 91.189.88.162 80]

W: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/wily-updates/universe/binary-amd64/Packages  404  Not Found [IP: 91.189.88.162 80]

W: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/wily-security/main/source/Sources  404  Not Found [IP: 91.189.88.162 80]

W: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/wily-security/restricted/source/Sources  404  Not Found [IP: 91.189.88.162 80]

W: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/wily-security/universe/source/Sources  404  Not Found [IP: 91.189.88.162 80]

W: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/wily-security/main/binary-amd64/Packages  404  Not Found [IP: 91.189.88.162 80]

W: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/wily-security/restricted/binary-amd64/Packages  404  Not Found [IP: 91.189.88.162 80]

W: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/wily-security/universe/binary-amd64/Packages  404  Not Found [IP: 91.189.88.162 80]

healthcheck

this is a feature request.
docker 1.12 added a HEALTHCHECK command, which would be a useful feature IMO, particularly if deploying activemq into a docker swarm...

I've had a play with trying to run something from a shell which might indicate a working activemq instance (I'm imagining that listing brokers and getting a non-zero response, or putting a message onto a queue and reading it back) - but I haven't had any success yet.

I found an error in ActiveMQ storage to Kahadb

I needed to map the ActiveMQ data storage folder so that I would not lose the messages in the production environment if the container gets corrupted.
By doing this I realized that no data was being written into the / opt / activemq / data folder
This folder would be empty throughout the ActiveMQ run.
Analyzing the env file of the opt / activemq / bin folder I saw that this file referred to an environment variable named $ ACTIVEMQ_DATA that was not defined in the container and there is no mention of this variable on the page that teaches to use this container.
Because this environment variable was empty, whenever you start ActiveMQ does not know in which folder to store the Kahadb files.
To correct this, just set the environment variable $ ACTIVEMQ_DATA during the creation of the container.
I believe it is valid to document this point for the initialization of the container in production.

docker container loop to start and exist activemq

HI,when I run docker activemq use follow command, the container loop to start and exist activemq, and I can't visit the http://192.168.59.103:8161/admin/ page, but when I remove -v parameter from command is OK.
Do I have something wrong? Thanks.

PS: I use boot2docker in OSX.

command:

docker run --name='myactivemq' -it --rm -v /Users/zhaozhiming/playground/activemq/data:/data/activemq -v /Users/zhaozhiming/playground/activemq/log/:/var/log/activemq -p 61613:61613 -p 61614:61614 -p 61616:61616 -p 8161:8161 -p 1883:1883 -p 5672:5672 webcenter/activemq:5.10.0

console:

2015-03-25 15:11:56,883 CRIT Supervisor running as root (no user in config file)
2015-03-25 15:11:56,883 WARN Included extra file "/etc/supervisor/conf.d/cron.conf" during parsing
2015-03-25 15:11:56,883 WARN Included extra file "/etc/supervisor/conf.d/activemq.conf" during parsing
2015-03-25 15:11:56,890 INFO RPC interface 'supervisor' initialized
2015-03-25 15:11:56,891 CRIT Server 'unix_http_server' running without any HTTP authentication checking
2015-03-25 15:11:56,891 INFO supervisord started with pid 57
2015-03-25 15:11:57,894 INFO spawned: 'cron' with pid 60
2015-03-25 15:11:57,896 INFO spawned: 'activemq' with pid 61
2015-03-25 15:11:59,874 INFO success: cron entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
2015-03-25 15:11:59,874 INFO success: activemq entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
2015-03-25 15:12:02,279 INFO exited: activemq (exit status 0; expected)
2015-03-25 15:12:03,286 INFO spawned: 'activemq' with pid 146
2015-03-25 15:12:05,265 INFO success: activemq entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
2015-03-25 15:12:07,688 INFO exited: activemq (exit status 0; expected)
2015-03-25 15:12:08,690 INFO spawned: 'activemq' with pid 232
2015-03-25 15:12:10,676 INFO success: activemq entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
2015-03-25 15:12:13,135 INFO exited: activemq (exit status 0; expected)
2015-03-25 15:12:14,139 INFO spawned: 'activemq' with pid 317
2015-03-25 15:12:16,122 INFO success: activemq entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
2015-03-25 15:12:18,584 INFO exited: activemq (exit status 0; expected)
2015-03-25 15:12:19,589 INFO spawned: 'activemq' with pid 403
......

Error when trying to connect broker without any authentification

Hi,
I use the last image release 5.13.1 and using default settings.
When my app try to connect to this container, i have the following error message:
Cause: User name [null] or password is invalid
I want to connect to my broker without any authentification.
How can i do this with the latest release?

Thanks,

Container doesn't start when binding volume conf

Hi,
when I run

mkdir -p ~/activemq/conf
docker run --name='activemq' -it --rm \
    -e 'ACTIVEMQ_MIN_MEMORY=512' \
    -e 'ACTIVEMQ_MAX_MEMORY=2048'\
        -p 8161:8161 \
    -p 61616:61616 \
    -p 61613:61613 \
    -v ~/activemq/conf:/opt/activemq/conf \
    webcenter/activemq:latest

I get the following error:

Traceback (most recent call last):
  File "/app/init.py", line 378, in <module>
    setting_all()
  File "/app/init.py", line 256, in setting_all
    do_init_activemq()
  File "/app/init.py", line 245, in do_init_activemq
    replace_all(ACTIVEMQ_CONF + "/log4j.properties", "\$\{activemq\.base\}\/data\/", "/var/log/activemq/")
  File "/app/init.py", line 28, in replace_all
    f = open(file,'r')
IOError: [Errno 2] No such file or directory: '/opt/activemq/conf.tmp/log4j.properties'

Without the volume binding to conf, everything works fine. But I need to change the activemq.xml.
I hope you can help me.

Kind Regards
Philipp

Error "File exists: '/opt/activemq/conf.tmp'" when using docker-compose

Hi. We are using 5.11.1 in a docker-compose setup.
This seems to trigger some kind of race condition.
Initial startup is always succesful while following starts often (but not always) fails like this:

2015-08-14 14:25:14,309 CRIT Supervisor running as root (no user in config file)
2015-08-14 14:25:14,311 WARN Included extra file "/etc/supervisor/conf.d/cron.conf" during parsing
2015-08-14 14:25:14,311 WARN Included extra file "/etc/supervisor/conf.d/activemq.conf" during parsing
2015-08-14 14:25:14,323 INFO RPC interface 'supervisor' initialized
2015-08-14 14:25:14,325 CRIT Server 'unix_http_server' running without any HTTP authentication checking
2015-08-14 14:25:14,325 INFO supervisord started with pid 15
2015-08-14 14:25:15,327 INFO spawned: 'cron' with pid 18
2015-08-14 14:25:15,328 INFO spawned: 'activemq' with pid 19
2015-08-14 14:25:16,418 INFO success: cron entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
2015-08-14 14:25:16,418 INFO success: activemq entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
Traceback (most recent call last):
  File "/app/init.py", line 366, in <module>
    shutil.copytree(ACTIVEMQ_HOME + "/conf/", ACTIVEMQ_CONF);
  File "/usr/lib/python2.7/shutil.py", line 177, in copytree
    os.makedirs(dst)
  File "/usr/lib/python2.7/os.py", line 157, in makedirs
    mkdir(name, mode)
OSError: [Errno 17] File exists: '/opt/activemq/conf.tmp'
Traceback (most recent call last):
  File "/app/init.py", line 366, in <module>
    shutil.copytree(ACTIVEMQ_HOME + "/conf/", ACTIVEMQ_CONF);
  File "/usr/lib/python2.7/shutil.py", line 177, in copytree
    os.makedirs(dst)
  File "/usr/lib/python2.7/os.py", line 157, in makedirs
    mkdir(name, mode)
OSError: [Errno 17] File exists: '/opt/activemq/conf.tmp'
Traceback (most recent call last):
  File "/app/init.py", line 366, in <module>
    shutil.copytree(ACTIVEMQ_HOME + "/conf/", ACTIVEMQ_CONF);
  File "/usr/lib/python2.7/shutil.py", line 177, in copytree
    os.makedirs(dst)
  File "/usr/lib/python2.7/os.py", line 157, in makedirs
    mkdir(name, mode)
OSError: [Errno 17] File exists: '/opt/activemq/conf.tmp'

Do you have any idea why this is happening?

ACTIVEMQ_CONFIG_DEFAULTACCOUNT doesn't work

The documentation on dockerhub says to disble default account with

ACTIVEMQ_CONFIG_DEFAULTACCOUNT false

but here and in the scripts its actually

ACTIVEMQ_REMOVE_DEFAULT_ACCOUNT true

Can you update dockerhub please to avoid misleading people?

401 - Users defined by env variables not created

I followed the README instructions and ran webcenter/activemq in Kubernetes with the following variables:

ACTIVEMQ_ADMIN_PASSWORD=foo
ACTIVEMQ_ACTIVEMQ_USERS_user1=bar

However all attempts to access ActiveMQ with these credentials fail with 401 Not Authorized (REST API).

I have shelled into the container and verified the variables are set.

How is this supposed to work? Do you have a script which should update conf/jetty-realm.properties?
If so, it's not working.

JMX doesn't work because of permissions

Error: Password file read access must be restricted: /opt/activemq/conf/jmx.password

I think this should be handled either in the DOCKERFILE or by the python script.

How to pass ACTIVEMQ_OPTS

I'd like to supply a java agent to this activemq image, but simply setting the ACTIVEMQ_OPTS doesn't seem to work. I guess current env properties should be passed-through to activemq, or at least all properties that start with "ACTIVEMQ_"

Remote JMX for ActiveMQ in Docker

Hi,
I am trying to setup JMX monitoring of my ActiveMQ Docker container. I set-up the environment variables in my docker-compose file:

ACTIVEMQ_JMX_user1_role=read
ACTIVEMQ_JMX_user1_password=password

However I can't still connect. It looks like DockerFile doesn't expose the default JMX port 1099 and thus it can't be connected. I mapped the 1099 port in docker-compose, but when i try telnet 1099, connection is refused. However I can telnet e.g. to port 61616 .

Am I missing something, like JMX is running on different port in this image?

Clustering support

I am looking into the possibility to replace my saturated mosquitto server with a network of brokers under the same overlay network using dynamic discovery.

Since I don't see any documentations about clustering, just want to know if there is any plans or thoughts about this.

I may have to make this work in the near future, so if PR is welcomed I could share my works here instead of my own fork.

websocket config not working

Left Default settings and created this docker-compose.yml

  broker:
    image: webcenter/activemq
    container_name: "activemq_broker"
    ports:
      - "1883:1883"
      - "5672:5672"
      - "8161:8161"
      - "61614:61614"
      - "61616:61616"
    environment:
      ACTIVEMQ_NAME: amq
      ACTIVEMQ_REMOVE_DEFAULT_ACCOUNT: 'True'
      ACTIVEMQ_ADMIN_LOGIN: admin
      ACTIVEMQ_ADMIN_PASSWORD: admin
    volumes:
      - /container_data/activemq/data:/data/activemq
      - /container_data/activemq/log:/var/log/activemq

Somehow I can't receive mqtt messages via Websocket. I can succesfully receive them via mqtt in my backend, but not in my angular application via Websocket. I already had an activemq broker working before and tried passing its own activemq.xml conf file as follows:

    volumes:
      - /container_data/activemq/data:/data/activemq
      - /container_data/activemq/log:/var/log/activemq
      - ./broker-config:/opt/activemq/conf

But this volume simply crashes the broker. ThenI noticed that it's warned to do this:

""If you overload the config, don't forget to disable confd or change the template instead to change activemq config /opt/confd/etc/templates.""

but I don't understand what else to do.. Help please!

Cannot mount a custom activemq.xml

Hi, if I mount a custom activemq.xml file on activemq/conf/activemq.xml the init script fails on sed.

sed: cannot rename conf/sedB1mvOH: Device or resource busy

The issue is explained here https://docs.docker.com/userguide/dockervolumes/#mount-a-host-file-as-a-data-volume

Note: Many tools used to edit files including vi and sed --in-place may result in an inode change. Since Docker v1.1.0, this will produce an error such as "sed: cannot rename ./sedKdJ9Dy: Device or resource busy". In the case where you want to edit the mounted file, it is often easiest to instead mount the parent directory.

Then if I mount the parent conf directory the init script fails because it can't find your *.properties files (https://github.com/disaster37/activemq/tree/master/assets/config)

Runtime Configuration Plugin - Does not work with volumes

RuntimeConfigurationPlugin scans activemq.xml for changes.

Since the init script copies from conf/ to conf.tmp/ on startup and starts activemq with the conf.tmp directory, changes on the host's volume does not cause a config refresh.

Do you have any suggestions on handling this?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.