diff --git a/Dockerfile b/Dockerfile index eceb568cba1fbb9be25938d0d3ed19d590425511..aa4670d9ac0850c472f9125f1702332ac48ea724 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,11 +1,16 @@ -ARG BASE_REGISTRY=registry.access.redhat.com -ARG BASE_IMAGE=ubi8 -ARG BASE_TAG=8.2 +ARG BASE_REGISTRY=nexus-docker-secure.levelup-dev.io +ARG BASE_IMAGE=opensource/openjdk/openjdk11 +ARG BASE_TAG=1.11 FROM jboss/keycloak:10.0.1 AS builder COPY --chown=jboss:root scripts/ /opt/jboss/tools +RUN ${JBOSS_HOME}/bin/jboss-cli.sh --file=/opt/jboss/tools/cli/remove-datasources.cli && \ + rm -rf /opt/jboss/keycloak/standalone/configuration/standalone_xml_history && \ + rm -rf /opt/jboss/keycloak/modules/system/layers/base/com/mysql/jdbc && \ + rm -rf /opt/jboss/keycloak/modules/system/layers/base/com/h2database + # This is the base image FROM ${BASE_REGISTRY}/${BASE_IMAGE}:${BASE_TAG} @@ -18,7 +23,6 @@ LABEL name="Keycloak" \ ENV KEYCLOAK_VERSION="10.0.1" \ JDBC_POSTGRES_VERSION="42.2.5" \ - JDBC_MYSQL_VERSION="8.0.19" \ JDBC_MARIADB_VERSION="2.5.4" \ JDBC_MSSQL_VERSION="7.4.1.jre11" \ LAUNCH_JBOSS_IN_BACKGROUND="1" \ @@ -29,8 +33,9 @@ ENV KEYCLOAK_VERSION="10.0.1" \ KEYCLOAK_USER_ID="1000" \ KEYCLOAK_HOME="/opt/jboss" +USER root RUN dnf update -y && \ - dnf install -y hostname java-11-openjdk-headless openssl && \ + dnf install -y hostname openssl && \ dnf clean all && \ rm -rf /var/cache/dnf diff --git a/README.md b/README.md index 5ad401b0b60a6d8a9f6750f2a0e01e7e7c2be9d8..d648bf9615e7d331c76beb2ac84404cf64fbd9db 100644 --- a/README.md +++ b/README.md @@ -34,3 +34,20 @@ If you believe you have discovered a defect in Keycloak please open an issue in Please remember to provide a good summary, description as well as steps to reproduce the issue. ## [Keycloak Public Repo](https://github.com/keycloak/keycloak) + +## Notes + +Support for the following databases have been removed from the ironbank image. + +* h2 (embedded) +* MySQL + +Users may add support for MySQL by extending the image: +``` +ENV JDBC_MYSQL_VERSION 8.0.19 +RUN mkdir -p /opt/jboss/keycloak/modules/system/layers/base/com/mysql/jdbc/main && \ + cd /opt/jboss/keycloak/modules/system/layers/base/com/mysql/jdbc/main && \ + curl -O https://repo1.maven.org/maven2/mysql/mysql-connector-java/$JDBC_MYSQL_VERSION/mysql-connector-java-$JDBC_MYSQL_VERSION.jar && \ + cp /opt/jboss/tools/databases/mysql/module.xml . && \ + sed "s/JDBC_MYSQL_VERSION/$JDBC_MYSQL_VERSION/" /opt/jboss/tools/databases/mysql/module.xml > module.xml +``` diff --git a/scripts/cli/remove-datasources.cli b/scripts/cli/remove-datasources.cli new file mode 100644 index 0000000000000000000000000000000000000000..bcfb1ffc6f4239e65bcc4127c99a8f78420e3b5b --- /dev/null +++ b/scripts/cli/remove-datasources.cli @@ -0,0 +1,15 @@ +embed-server --server-config=standalone.xml --std-out=discard +batch +data-source remove --name=ExampleDS +/subsystem=ee/service=default-bindings:write-attribute(name=datasource,value=undefined) +/subsystem=datasources/jdbc-driver=h2:remove() +run-batch +stop-embedded-server + +embed-server --server-config=standalone-ha.xml --std-out=discard +batch +data-source remove --name=ExampleDS +/subsystem=ee/service=default-bindings:write-attribute(name=datasource,value=undefined) +/subsystem=datasources/jdbc-driver=h2:remove() +run-batch +stop-embedded-server