Skip to content

Instantly share code, notes, and snippets.

@riprasad
Created September 9, 2022 12:36
Show Gist options
  • Save riprasad/f8b17a916afeec82fb79fe2a3acdbb47 to your computer and use it in GitHub Desktop.
Save riprasad/f8b17a916afeec82fb79fe2a3acdbb47 to your computer and use it in GitHub Desktop.
# This is a Dockerfile for the service-registry-infinispan:1.1.0 image.
## START target image service-registry-infinispan:1.1.0
## \
FROM registry.redhat.io/ubi8/openjdk-11:latest
USER root
###### START module 'install-artifact:1.0'
###### \
# Copy 'install-artifact' module general artifacts to '/tmp/artifacts/' destination
COPY \
apicurio-registry-storage-infinispan.jar \
/tmp/artifacts/
# Copy 'install-artifact' module content
COPY modules/install-artifact /tmp/scripts/install-artifact
# Custom scripts from 'install-artifact' module
USER root
RUN [ "sh", "-x", "/tmp/scripts/install-artifact/copy.sh" ]
###### /
###### END module 'install-artifact:1.0'
###### START image 'service-registry-infinispan:1.1.0'
###### \
# Copy 'service-registry-infinispan' image general artifacts to '/tmp/artifacts/' destination
COPY \
apicurio-registry-storage-infinispan.jar \
apicurio-registry-storage-jpa.jar \
apicurio-registry-storage-streams.jar \
/tmp/artifacts/
# Set 'service-registry-infinispan' image defined environment variables
ENV \
JAVA_APP_DIR="/deployments" \
JBOSS_IMAGE_NAME="service-registry-infinispan" \
JBOSS_IMAGE_VERSION="1.1.0"
# Set 'service-registry-infinispan' image defined labels
LABEL \
com.redhat.component="integration-service-registry-infinispan-container" \
description="The Red Hat Integration service registry is an artifact registry for schemas and API definitions for API and event-based endpoints. This image supports an Infinispan-based persistence mechanism based on Red Hat Data Grid." \
io.cekit.version="3.7.0" \
io.k8s.description="An artifact registry for Schemas and API designs" \
io.k8s.display-name="Red Hat Integration - Service Registy [Infinispan]" \
io.openshift.tags="integration" \
maintainer="Service Registry Engineering <service-registry-dev@redhat.com>" \
name="service-registry-infinispan" \
summary="The Red Hat Integration service registry is an artifact registry for schemas and API definitions for API and event-based endpoints. This image supports an Infinispan-based persistence mechanism based on Red Hat Data Grid." \
version="1.1.0"
# Exposed ports in 'service-registry-infinispan' image
EXPOSE 8080 8778 9779
###### /
###### END image 'service-registry-infinispan:1.1.0'
# Switch to 'root' user and remove artifacts and modules
USER root
RUN [ ! -d /tmp/scripts ] || rm -rf /tmp/scripts
RUN [ ! -d /tmp/artifacts ] || rm -rf /tmp/artifacts
# Define the user
USER 185
## /
## END target image
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment