Switch to registry.access.redhat.com registry
This commit is contained in:
committed by
Arthur Barr
parent
0943d420bc
commit
f6fbc71092
@@ -3,6 +3,7 @@
|
|||||||
## 9.3.0.0 (2022-03-29)
|
## 9.3.0.0 (2022-03-29)
|
||||||
|
|
||||||
* Updated to MQ version 9.3.0.0
|
* Updated to MQ version 9.3.0.0
|
||||||
|
* Use `registry.access.redhat.com` instead of `registry.redhat.io`, so that you don't need to login with a Red Hat account.
|
||||||
|
|
||||||
## 9.2.5.0 (2021-12-06)
|
## 9.2.5.0 (2021-12-06)
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
# © Copyright IBM Corporation 2015, 2021
|
# © Copyright IBM Corporation 2015, 2022
|
||||||
#
|
#
|
||||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
# you may not use this file except in compliance with the License.
|
# you may not use this file except in compliance with the License.
|
||||||
@@ -12,9 +12,9 @@
|
|||||||
# See the License for the specific language governing permissions and
|
# See the License for the specific language governing permissions and
|
||||||
# limitations under the License.
|
# limitations under the License.
|
||||||
|
|
||||||
ARG BASE_IMAGE=registry.redhat.io/ubi8/ubi-minimal
|
ARG BASE_IMAGE=registry.access.redhat.com/ubi8/ubi-minimal
|
||||||
ARG BASE_TAG=8.5-240.1648458092
|
ARG BASE_TAG=8.5-240.1648458092
|
||||||
ARG BUILDER_IMAGE=registry.redhat.io/ubi8/go-toolset
|
ARG BUILDER_IMAGE=registry.access.redhat.com/ubi8/go-toolset
|
||||||
ARG BUILDER_TAG=1.16.12-7
|
ARG BUILDER_TAG=1.16.12-7
|
||||||
ARG GO_WORKDIR=/opt/app-root/src/go/src/github.com/ibm-messaging/mq-container
|
ARG GO_WORKDIR=/opt/app-root/src/go/src/github.com/ibm-messaging/mq-container
|
||||||
ARG MQ_URL="https://public.dhe.ibm.com/ibmdl/export/pub/software/websphere/messaging/mqadv/9.3.0.0-IBM-MQ-Advanced-for-Developers-Non-Install-LinuxX64.tar.gz"
|
ARG MQ_URL="https://public.dhe.ibm.com/ibmdl/export/pub/software/websphere/messaging/mqadv/9.3.0.0-IBM-MQ-Advanced-for-Developers-Non-Install-LinuxX64.tar.gz"
|
||||||
@@ -123,13 +123,14 @@ ENTRYPOINT ["runmqserver"]
|
|||||||
###############################################################################
|
###############################################################################
|
||||||
# Build stage to build C code for custom authorization service (developer-only)
|
# Build stage to build C code for custom authorization service (developer-only)
|
||||||
###############################################################################
|
###############################################################################
|
||||||
FROM registry.redhat.io/rhel8/gcc-toolset-9-toolchain as cbuilder
|
# User the Go toolset image, which already includes gcc
|
||||||
|
FROM $BUILDER_IMAGE:$BUILDER_TAG as cbuilder
|
||||||
# The URL to download the MQ installer from in tar.gz format
|
# The URL to download the MQ installer from in tar.gz format
|
||||||
# This assumes an archive containing the MQ Non-Install packages
|
# This assumes an archive containing the MQ Non-Install packages
|
||||||
ARG MQ_URL
|
ARG MQ_URL
|
||||||
USER 0
|
USER 0
|
||||||
# Install the Apache Portable Runtime code (used for htpasswd hash checking)
|
# Install the Apache Portable Runtime code (used for htpasswd hash checking)
|
||||||
RUN yum -y install apr-devel apr-util-openssl apr-util-devel
|
RUN yum --assumeyes --disableplugin=subscription-manager install apr-devel apr-util-openssl apr-util-devel
|
||||||
# Install MQ client
|
# Install MQ client
|
||||||
COPY install-mq.sh /usr/local/bin/
|
COPY install-mq.sh /usr/local/bin/
|
||||||
RUN mkdir /opt/mqm \
|
RUN mkdir /opt/mqm \
|
||||||
|
|||||||
27
Makefile
27
Makefile
@@ -1,4 +1,4 @@
|
|||||||
# © Copyright IBM Corporation 2017, 2021
|
# © Copyright IBM Corporation 2017, 2022
|
||||||
#
|
#
|
||||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
# you may not use this file except in compliance with the License.
|
# you may not use this file except in compliance with the License.
|
||||||
@@ -59,10 +59,6 @@ MQ_DELIVERY_REGISTRY_NAMESPACE ?=
|
|||||||
MQ_DELIVERY_REGISTRY_USER ?=
|
MQ_DELIVERY_REGISTRY_USER ?=
|
||||||
# MQ_DELIVERY_REGISTRY_CREDENTIAL is the password/API key for the remote registry (if required)
|
# MQ_DELIVERY_REGISTRY_CREDENTIAL is the password/API key for the remote registry (if required)
|
||||||
MQ_DELIVERY_REGISTRY_CREDENTIAL ?=
|
MQ_DELIVERY_REGISTRY_CREDENTIAL ?=
|
||||||
# REGISTRY_USER is the username used to login to the Red Hat registry
|
|
||||||
REGISTRY_USER ?=
|
|
||||||
# REGISTRY_PASS is the password used to login to the Red Hat registry
|
|
||||||
REGISTRY_PASS ?=
|
|
||||||
# ARCH is the platform architecture (e.g. amd64, ppc64le or s390x)
|
# ARCH is the platform architecture (e.g. amd64, ppc64le or s390x)
|
||||||
ARCH ?= $(if $(findstring x86_64,$(shell uname -m)),amd64,$(shell uname -m))
|
ARCH ?= $(if $(findstring x86_64,$(shell uname -m)),amd64,$(shell uname -m))
|
||||||
# LTS is a boolean value to enable/disable LTS container build
|
# LTS is a boolean value to enable/disable LTS container build
|
||||||
@@ -269,7 +265,7 @@ test-advancedserver: test/docker/vendor
|
|||||||
cd test/docker && TEST_IMAGE=$(MQ_IMAGE_ADVANCEDSERVER):$(MQ_TAG) EXPECTED_LICENSE=Production go test -parallel $(NUM_CPU) -timeout $(TEST_TIMEOUT_DOCKER) $(TEST_OPTS_DOCKER)
|
cd test/docker && TEST_IMAGE=$(MQ_IMAGE_ADVANCEDSERVER):$(MQ_TAG) EXPECTED_LICENSE=Production go test -parallel $(NUM_CPU) -timeout $(TEST_TIMEOUT_DOCKER) $(TEST_OPTS_DOCKER)
|
||||||
|
|
||||||
.PHONY: build-devjmstest
|
.PHONY: build-devjmstest
|
||||||
build-devjmstest: registry-login
|
build-devjmstest:
|
||||||
$(info $(SPACER)$(shell printf $(TITLE)"Build JMS tests for developer config"$(END)))
|
$(info $(SPACER)$(shell printf $(TITLE)"Build JMS tests for developer config"$(END)))
|
||||||
cd test/messaging && docker build --tag $(DEV_JMS_IMAGE) .
|
cd test/messaging && docker build --tag $(DEV_JMS_IMAGE) .
|
||||||
|
|
||||||
@@ -309,7 +305,7 @@ test-advancedserver-cover: test/docker/vendor coverage
|
|||||||
# Build an MQ image. The commands used are slightly different between Docker and Podman
|
# Build an MQ image. The commands used are slightly different between Docker and Podman
|
||||||
define build-mq
|
define build-mq
|
||||||
$(if $(findstring docker,$(COMMAND)), @docker network create build,)
|
$(if $(findstring docker,$(COMMAND)), @docker network create build,)
|
||||||
$(if $(findstring docker,$(COMMAND)), @docker run --rm --name $(BUILD_SERVER_CONTAINER) --network build --network-alias build --volume $(DOWNLOADS_DIR):/opt/app-root/src$(VOLUME_MOUNT_OPTIONS) --detach registry.redhat.io/ubi8/nginx-118 nginx -g "daemon off;",)
|
$(if $(findstring docker,$(COMMAND)), @docker run --rm --name $(BUILD_SERVER_CONTAINER) --network build --network-alias build --volume $(DOWNLOADS_DIR):/opt/app-root/src$(VOLUME_MOUNT_OPTIONS) --detach registry.access.redhat.com/ubi8/nginx-118 nginx -g "daemon off;",)
|
||||||
$(eval EXTRA_ARGS=$(if $(findstring docker,$(COMMAND)), --network build --build-arg MQ_URL=http://build:8080/$4, --volume $(DOWNLOADS_DIR):/var/downloads$(VOLUME_MOUNT_OPTIONS) --build-arg MQ_URL=file:///var/downloads/$4))
|
$(eval EXTRA_ARGS=$(if $(findstring docker,$(COMMAND)), --network build --build-arg MQ_URL=http://build:8080/$4, --volume $(DOWNLOADS_DIR):/var/downloads$(VOLUME_MOUNT_OPTIONS) --build-arg MQ_URL=file:///var/downloads/$4))
|
||||||
# Build the new image
|
# Build the new image
|
||||||
$(COMMAND) build \
|
$(COMMAND) build \
|
||||||
@@ -352,7 +348,7 @@ endif
|
|||||||
build-advancedserver-host: build-advancedserver
|
build-advancedserver-host: build-advancedserver
|
||||||
|
|
||||||
.PHONY: build-advancedserver
|
.PHONY: build-advancedserver
|
||||||
build-advancedserver: registry-login log-build-env downloads/$(MQ_ARCHIVE) command-version
|
build-advancedserver: log-build-env downloads/$(MQ_ARCHIVE) command-version
|
||||||
$(info $(SPACER)$(shell printf $(TITLE)"Build $(MQ_IMAGE_ADVANCEDSERVER):$(MQ_TAG)"$(END)))
|
$(info $(SPACER)$(shell printf $(TITLE)"Build $(MQ_IMAGE_ADVANCEDSERVER):$(MQ_TAG)"$(END)))
|
||||||
$(call build-mq,$(MQ_IMAGE_ADVANCEDSERVER),$(MQ_TAG),Dockerfile-server,$(MQ_ARCHIVE),mq-server)
|
$(call build-mq,$(MQ_IMAGE_ADVANCEDSERVER),$(MQ_TAG),Dockerfile-server,$(MQ_ARCHIVE),mq-server)
|
||||||
|
|
||||||
@@ -360,29 +356,23 @@ build-advancedserver: registry-login log-build-env downloads/$(MQ_ARCHIVE) comma
|
|||||||
build-devserver-host: build-devserver
|
build-devserver-host: build-devserver
|
||||||
|
|
||||||
.PHONY: build-devserver
|
.PHONY: build-devserver
|
||||||
build-devserver: registry-login log-build-env downloads/$(MQ_ARCHIVE_DEV) command-version
|
build-devserver: log-build-env downloads/$(MQ_ARCHIVE_DEV) command-version
|
||||||
$(info $(shell printf $(TITLE)"Build $(MQ_IMAGE_DEVSERVER):$(MQ_TAG)"$(END)))
|
$(info $(shell printf $(TITLE)"Build $(MQ_IMAGE_DEVSERVER):$(MQ_TAG)"$(END)))
|
||||||
$(call build-mq,$(MQ_IMAGE_DEVSERVER),$(MQ_TAG),Dockerfile-server,$(MQ_ARCHIVE_DEV),mq-dev-server)
|
$(call build-mq,$(MQ_IMAGE_DEVSERVER),$(MQ_TAG),Dockerfile-server,$(MQ_ARCHIVE_DEV),mq-dev-server)
|
||||||
|
|
||||||
.PHONY: build-advancedserver-cover
|
.PHONY: build-advancedserver-cover
|
||||||
build-advancedserver-cover: registry-login command-version
|
build-advancedserver-cover: command-version
|
||||||
$(COMMAND) build --build-arg BASE_IMAGE=$(MQ_IMAGE_ADVANCEDSERVER):$(MQ_TAG) -t $(MQ_IMAGE_ADVANCEDSERVER):$(MQ_TAG)-cover -f Dockerfile-server.cover .
|
$(COMMAND) build --build-arg BASE_IMAGE=$(MQ_IMAGE_ADVANCEDSERVER):$(MQ_TAG) -t $(MQ_IMAGE_ADVANCEDSERVER):$(MQ_TAG)-cover -f Dockerfile-server.cover .
|
||||||
|
|
||||||
.PHONY: build-explorer
|
.PHONY: build-explorer
|
||||||
build-explorer: registry-login downloads/$(MQ_ARCHIVE_DEV)
|
build-explorer: downloads/$(MQ_ARCHIVE_DEV)
|
||||||
$(call build-mq,mq-explorer,latest-$(ARCH),incubating/mq-explorer/Dockerfile,$(MQ_ARCHIVE_DEV),mq-explorer)
|
$(call build-mq,mq-explorer,latest-$(ARCH),incubating/mq-explorer/Dockerfile,$(MQ_ARCHIVE_DEV),mq-explorer)
|
||||||
|
|
||||||
.PHONY: build-sdk
|
.PHONY: build-sdk
|
||||||
build-sdk: registry-login downloads/$(MQ_ARCHIVE_DEV)
|
build-sdk: downloads/$(MQ_ARCHIVE_DEV)
|
||||||
$(info $(shell printf $(TITLE)"Build $(MQ_IMAGE_SDK)"$(END)))
|
$(info $(shell printf $(TITLE)"Build $(MQ_IMAGE_SDK)"$(END)))
|
||||||
$(call build-mq,mq-sdk,$(MQ_TAG),incubating/mq-sdk/Dockerfile,$(MQ_SDK_ARCHIVE),mq-sdk)
|
$(call build-mq,mq-sdk,$(MQ_TAG),incubating/mq-sdk/Dockerfile,$(MQ_SDK_ARCHIVE),mq-sdk)
|
||||||
|
|
||||||
.PHONY: registry-login
|
|
||||||
registry-login:
|
|
||||||
ifneq ($(REGISTRY_USER),)
|
|
||||||
$(COMMAND) login -u $(REGISTRY_USER) -p $(REGISTRY_PASS) registry.redhat.io
|
|
||||||
endif
|
|
||||||
|
|
||||||
.PHONY: log-build-env
|
.PHONY: log-build-env
|
||||||
log-build-vars:
|
log-build-vars:
|
||||||
$(info $(SPACER)$(shell printf $(TITLE)"Build environment"$(END)))
|
$(info $(SPACER)$(shell printf $(TITLE)"Build environment"$(END)))
|
||||||
@@ -393,7 +383,6 @@ log-build-vars:
|
|||||||
@echo MQ_IMAGE_DEVSERVER=$(MQ_IMAGE_DEVSERVER)
|
@echo MQ_IMAGE_DEVSERVER=$(MQ_IMAGE_DEVSERVER)
|
||||||
@echo MQ_IMAGE_ADVANCEDSERVER=$(MQ_IMAGE_ADVANCEDSERVER)
|
@echo MQ_IMAGE_ADVANCEDSERVER=$(MQ_IMAGE_ADVANCEDSERVER)
|
||||||
@echo COMMAND=$(COMMAND)
|
@echo COMMAND=$(COMMAND)
|
||||||
@echo REGISTRY_USER=$(REGISTRY_USER)
|
|
||||||
|
|
||||||
.PHONY: log-build-env
|
.PHONY: log-build-env
|
||||||
log-build-env: log-build-vars
|
log-build-env: log-build-vars
|
||||||
|
|||||||
@@ -9,8 +9,6 @@ You need to have the following tools installed:
|
|||||||
|
|
||||||
If you are working in the Windows Subsystem for Linux, follow [this guide by Microsoft to set up Docker](https://blogs.msdn.microsoft.com/commandline/2017/12/08/cross-post-wsl-interoperability-with-docker/) first.
|
If you are working in the Windows Subsystem for Linux, follow [this guide by Microsoft to set up Docker](https://blogs.msdn.microsoft.com/commandline/2017/12/08/cross-post-wsl-interoperability-with-docker/) first.
|
||||||
|
|
||||||
You will also need a [Red Hat Account](https://access.redhat.com) to be able to access the Red Hat Registry.
|
|
||||||
|
|
||||||
## Building a production image
|
## Building a production image
|
||||||
|
|
||||||
From MQ 9.2.X, the MQ container adds support for MQ Long Term Support (LTS) **production licensed** releases.
|
From MQ 9.2.X, the MQ container adds support for MQ Long Term Support (LTS) **production licensed** releases.
|
||||||
@@ -21,8 +19,7 @@ This procedure works for building the MQ Continuous Delivery release, on `amd64`
|
|||||||
|
|
||||||
1. Create a `downloads` directory in the root of this repository
|
1. Create a `downloads` directory in the root of this repository
|
||||||
2. Download MQ from [IBM Passport Advantage](https://www.ibm.com/software/passportadvantage/) or [IBM Fix Central](https://www.ibm.com/support/fixcentral), and place the downloaded file (for example, `IBM_MQ_9.3.0_LINUX_X86-64_NOINST.tar.gz`) in the `downloads` directory
|
2. Download MQ from [IBM Passport Advantage](https://www.ibm.com/software/passportadvantage/) or [IBM Fix Central](https://www.ibm.com/support/fixcentral), and place the downloaded file (for example, `IBM_MQ_9.3.0_LINUX_X86-64_NOINST.tar.gz`) in the `downloads` directory
|
||||||
3. Login to the Red Hat Registry: `docker login registry.redhat.io` using your Customer Portal credentials.
|
3. Run `make build-advancedserver`
|
||||||
4. Run `make build-advancedserver`
|
|
||||||
|
|
||||||
> **Warning**: Note that from MQ 9.2.X CD, the MQ container build uses a 'No-Install' MQ Package, available under `IBM MQ V9.2.x Continuous Delivery Release components eAssembly, part no. CJ7CNML`
|
> **Warning**: Note that from MQ 9.2.X CD, the MQ container build uses a 'No-Install' MQ Package, available under `IBM MQ V9.2.x Continuous Delivery Release components eAssembly, part no. CJ7CNML`
|
||||||
|
|
||||||
@@ -38,8 +35,7 @@ This procedure works for building the MQ Long Term Support release, on `amd64`,
|
|||||||
|
|
||||||
1. Create a `downloads` directory in the root of this repository
|
1. Create a `downloads` directory in the root of this repository
|
||||||
2. Download MQ from [IBM Passport Advantage](https://www.ibm.com/software/passportadvantage/) or [IBM Fix Central](https://www.ibm.com/support/fixcentral), and place the downloaded file (for example, `9.2.0.4-IBM-MQ-Advanced-Non-Install-LinuxX86.tar.gz`) in the `downloads` directory
|
2. Download MQ from [IBM Passport Advantage](https://www.ibm.com/software/passportadvantage/) or [IBM Fix Central](https://www.ibm.com/support/fixcentral), and place the downloaded file (for example, `9.2.0.4-IBM-MQ-Advanced-Non-Install-LinuxX86.tar.gz`) in the `downloads` directory
|
||||||
3. Login to the Red Hat Registry: `docker login registry.redhat.io` using your Customer Portal credentials.
|
3. Run `LTS=true make build-advancedserver`
|
||||||
4. Run `LTS=true make build-advancedserver`
|
|
||||||
|
|
||||||
> **Warning**: Note that from MQ 9.2 LTS, the MQ container build uses a 'No-Install' MQ Package, available under `IBM MQ V9.2 Long Term Support Release components eAssembly, part no. CXXXXXX`
|
> **Warning**: Note that from MQ 9.2 LTS, the MQ container build uses a 'No-Install' MQ Package, available under `IBM MQ V9.2 Long Term Support Release components eAssembly, part no. CXXXXXX`
|
||||||
|
|
||||||
@@ -51,7 +47,6 @@ MQ_ARCHIVE=mq-1.2.3.4.tar.gz MQ_VERSION=1.2.3.4 LTS=true make build-advancedserv
|
|||||||
|
|
||||||
## Building a developer image
|
## Building a developer image
|
||||||
|
|
||||||
Login to the Red Hat Registry: `docker login registry.redhat.io` using your Customer Portal credentials.
|
|
||||||
Run `make build-devserver`, which will download the latest version of MQ Advanced for Developers from IBM developerWorks. This is currently only available on the `amd64` architecture.
|
Run `make build-devserver`, which will download the latest version of MQ Advanced for Developers from IBM developerWorks. This is currently only available on the `amd64` architecture.
|
||||||
|
|
||||||
You can use the environment variable `MQ_ARCHIVE_DEV` to specify an alternative local file to install from (which must be in the `downloads` directory).
|
You can use the environment variable `MQ_ARCHIVE_DEV` to specify an alternative local file to install from (which must be in the `downloads` directory).
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
# © Copyright IBM Corporation 2018, 2021
|
# © Copyright IBM Corporation 2018, 2022
|
||||||
#
|
#
|
||||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
# you may not use this file except in compliance with the License.
|
# you may not use this file except in compliance with the License.
|
||||||
@@ -15,7 +15,7 @@
|
|||||||
###############################################################################
|
###############################################################################
|
||||||
# Application build environment (Maven)
|
# Application build environment (Maven)
|
||||||
###############################################################################
|
###############################################################################
|
||||||
FROM registry.redhat.io/ubi8/openjdk-8 as builder
|
FROM registry.access.redhat.com/ubi8/openjdk-8 as builder
|
||||||
COPY pom.xml .
|
COPY pom.xml .
|
||||||
#WORKDIR /usr/src/mymaven
|
#WORKDIR /usr/src/mymaven
|
||||||
# Download dependencies separately, so Docker caches them
|
# Download dependencies separately, so Docker caches them
|
||||||
@@ -31,7 +31,7 @@ RUN find .
|
|||||||
# Application runtime (JRE only, no build environment)
|
# Application runtime (JRE only, no build environment)
|
||||||
###############################################################################
|
###############################################################################
|
||||||
# OpenJDK is not technically supported with the MQ client, but is good enough for these tests
|
# OpenJDK is not technically supported with the MQ client, but is good enough for these tests
|
||||||
FROM registry.redhat.io/ubi8/openjdk-8-runtime
|
FROM registry.access.redhat.com/ubi8/openjdk-8-runtime
|
||||||
COPY --from=builder /home/jboss/target/*.jar /opt/app/
|
COPY --from=builder /home/jboss/target/*.jar /opt/app/
|
||||||
COPY --from=builder /home/jboss/target/lib/*.jar /opt/app/
|
COPY --from=builder /home/jboss/target/lib/*.jar /opt/app/
|
||||||
USER 1001
|
USER 1001
|
||||||
|
|||||||
Reference in New Issue
Block a user