@@ -10,27 +10,37 @@ FROM ubuntu:14.04
1010MAINTAINER Arthur Barr <
[email protected] >
1111
1212RUN export DEBIAN_FRONTEND=noninteractive \
13+ # The URL to download the MQ installer from in tar.gz format
1314 && MQ_URL=http://public.dhe.ibm.com/ibmdl/export/pub/software/websphere/messaging/mqadv/mqadv_dev80_linux_x86-64.tar.gz \
15+ # The MQ packages to install
1416 && MQ_PACKAGES="MQSeriesRuntime-*.rpm MQSeriesServer-*.rpm MQSeriesMsg*.rpm MQSeriesJava*.rpm MQSeriesJRE*.rpm MQSeriesGSKit*.rpm" \
17+ # Optional: Update the command prompt
1518 && echo "mq:8.0" > /etc/debian_chroot \
19+ # Install additional packages required by this install process and the runtime scripts
1620 && apt-get update -y \
1721 && apt-get install -y \
1822 bash \
1923 bc \
2024 curl \
2125 rpm \
2226 tar \
27+ # Download and extract the MQ installation files
2328 && mkdir -p /tmp/mq \
2429 && cd /tmp/mq \
2530 && curl -LO $MQ_URL \
2631 && tar -zxvf ./*.tar.gz \
27- && groupadd --gid 1414 mqm \
28- && useradd --uid 1414 --gid mqm --home-dir /var/mqm mqm \
32+ # Recommended: Create the mqm user ID with a fixed UID and group, so that the file permissions work between different images
33+ && groupadd --gid 1000 mqm \
34+ && useradd --uid 1000 --gid mqm --home-dir /var/mqm mqm \
2935 && usermod -G mqm root \
3036 && cd /tmp/mq/MQServer \
37+ # Accept the MQ license
3138 && ./mqlicense.sh -text_only -accept \
39+ # Install MQ using the RPM packages
3240 && rpm -ivh --force-debian $MQ_PACKAGES \
41+ # Recommended: Set the default MQ installation (makes the MQ commands available on the PATH)
3342 && /opt/mqm/bin/setmqinst -p /opt/mqm -i \
43+ # Clean up all the downloaded files
3444 && rm -rf /tmp/mq \
3545 # Bypass defect in the "mqconfig" script
3646 && sed -i -e "s;CheckShellDefaultOptions$;#CheckShellDefaultOptions;g" /opt/mqm/bin/mqconfig
@@ -43,8 +53,10 @@ ENV MQ_QMGR_CMDLEVEL=802
4353
4454RUN chmod +x /usr/local/bin/*.sh
4555
56+ # Always use port 1414 (the Docker administrator can re-map ports at runtime)
4657EXPOSE 1414
4758
59+ # Always put the MQ data directory is in a Docker volume
4860VOLUME /var/mqm
4961
5062ENTRYPOINT ["mq.sh" ]
0 commit comments