apache-tomcat-9-image/Dockerfile.openjdk17

69 lines
3.9 KiB
Docker

# SPDX-License-Identifier: MIT
# Copyright (c) 2024 SUSE LLC
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon.
# The content of THIS FILE IS AUTOGENERATED and should not be manually modified.
# It is maintained by the BCI team and generated by
# https://github.com/SUSE/BCI-dockerfile-generator
# Please submit bugfixes or comments via https://bugs.opensuse.org/
# You can contact the BCI team via https://github.com/SUSE/bci/discussions
#!UseOBSRepositories
#!BuildTag: opensuse/apache-tomcat:%%tomcat_version%%-openjdk17-%RELEASE%
#!BuildTag: opensuse/apache-tomcat:%%tomcat_version%%-openjdk17
#!BuildTag: opensuse/apache-tomcat:9-openjdk17
#!BcntSyncTag: apache-tomcat-9-image
FROM opensuse/bci/bci-micro:latest AS target
FROM opensuse/tumbleweed:latest AS builder
COPY --from=target / /target
RUN set -euo pipefail; \
zypper -n --installroot /target --gpg-auto-import-keys install --no-recommends tomcat curl sed java-17-openjdk java-17-openjdk-headless; \
zypper -n --installroot /target remove util-linux; \
zypper -n clean; \
rm -rf {/target,}/var/log/{alternatives.log,lastlog,tallylog,zypper.log,zypp/history,YaST2}
FROM opensuse/bci/bci-micro:latest
COPY --from=builder /target /
# Define labels according to https://en.opensuse.org/Building_derived_containers
# labelprefix=org.opensuse.application.apache-tomcat
LABEL org.opencontainers.image.title="openSUSE Tumbleweed Apache Tomcat"
LABEL org.opencontainers.image.description="The Apache Tomcat software is an open-source implementation of the Jakarta Servlet, Jakarta Pages, Jakarta Expression Language, Jakarta WebSocket, Jakarta Annotations, and Jakarta Authentication specifications. These specifications are part of the Jakarta EE platform. It is based on the openSUSE Tumbleweed Base Container Image."
LABEL org.opencontainers.image.version="%%tomcat_version%%"
LABEL org.opencontainers.image.url="https://www.opensuse.org"
LABEL org.opencontainers.image.created="%BUILDTIME%"
LABEL org.opencontainers.image.vendor="openSUSE Project"
LABEL org.opencontainers.image.source="%SOURCEURL%"
LABEL org.opencontainers.image.ref.name="%%tomcat_version%%-openjdk17-%RELEASE%"
LABEL org.opensuse.reference="registry.opensuse.org/opensuse/apache-tomcat:%%tomcat_version%%-openjdk17-%RELEASE%"
LABEL org.openbuildservice.disturl="%DISTURL%"
LABEL org.opensuse.lifecycle-url="https://en.opensuse.org/Lifetime#openSUSE_BCI"
LABEL org.opensuse.release-stage="released"
# endlabelprefix
LABEL io.artifacthub.package.readme-url="https://raw.githubusercontent.com/SUSE/BCI-dockerfile-generator/Tumbleweed/apache-tomcat-9-image/README.openjdk17.md"
LABEL io.artifacthub.package.logo-url="https://tomcat.apache.org/res/images/tomcat.png"
ENV TOMCAT_MAJOR="9"
ENV TOMCAT_VERSION="%%tomcat_version%%"
ENV CATALINA_HOME="/usr/share/tomcat"
ENV CATALINA_BASE="/usr/share/tomcat"
ENV PATH="/usr/share/tomcat/bin:$PATH"
CMD ["/usr/libexec/tomcat/server", "start"]
EXPOSE 8080/tcp
RUN set -euo pipefail; mkdir -p /var/log/tomcat; chown --recursive tomcat:tomcat /var/log/tomcat
RUN set -euo pipefail; ln -s /usr/share/tomcat /usr/local/tomcat
RUN set -euo pipefail; \
sed -i /etc/tomcat/logging.properties \
-e 's|org\.apache\.catalina\.core\.ContainerBase\.\[Catalina\]\.\[localhost\]\.handlers =.*|org.apache.catalina.core.ContainerBase.[Catalina].[localhost].handlers = java.util.logging.ConsoleHandler|' \
-e 's|org\.apache\.catalina\.core\.ContainerBase\.\[Catalina\]\.\[localhost\]\.\[/manager\]\.handlers =.*|org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/manager].handlers = java.util.logging.ConsoleHandler|' \
-e 's|org\.apache\.catalina\.core\.ContainerBase\.\[Catalina\]\.\[localhost\]\.\[/host-manager\]\.handlers =.*|org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/host-manager].handlers = java.util.logging.ConsoleHandler|'
WORKDIR $CATALINA_HOME
USER tomcat