Giter Club home page Giter Club logo

Comments (7)

brunoborges avatar brunoborges commented on June 14, 2024

When I say it is easy, I meant that for end users to go ahead and build their own. :-)

from tomcat.

msladek avatar msladek commented on June 14, 2024

It's not easy for me as an end user to build and maintain my own Tomcat image based on Debian, since there is a lot of added complexity by the Tomcat Dockerfile that may not be compatible with Debian. This is the case for many images that use Temurin in their parent chain.

While Adoptium afaik never provided Debian base images Tomcat did in fact do so for Java 11/17 until recently, hence my request here.

from tomcat.

brunoborges avatar brunoborges commented on June 14, 2024

Your best bet is either get a vendor who provides commercial support for Tomcat, and as value add provides container images, or build your own as I said before.

One company I know of that provides commercial support for Tomcat is Tomitribe. There may be others.

from tomcat.

tianon avatar tianon commented on June 14, 2024

See #299, where my concerns definitely very strongly mirror Bruno's closing paragraph in the comment you linked: πŸ˜… ❀️

IMO pre-built container images are meant to be conveniences, not fully baked products. Publishing images for every little variation is time-consuming, error-prone, security risk, adds little value to the broader set of users, and takes a lot of time from the very few maintainers around.

(The very specific combination you've requested is not represented in #299, but the overall problem of doing so most certainly is.)

from tomcat.

tianon avatar tianon commented on June 14, 2024

It's not perfect (in fact, it could probably be shorter), but here's a basic example that should mostly work given the proximity between Ubuntu Jammy and Debian Bookworm, and even includes Tomcat Native:

FROM tomcat:10-jre11-temurin-jammy AS tomcat

FROM debian:bookworm-slim

# TODO wouldn't it be neat if we could "COPY --from" an environment variable? πŸ€”

ENV JAVA_HOME /opt/java/openjdk
COPY --from=tomcat $JAVA_HOME $JAVA_HOME

ENV CATALINA_HOME /usr/local/tomcat
COPY --from=tomcat $CATALINA_HOME $CATALINA_HOME
ENV PATH="${CATALINA_HOME}/bin:${JAVA_HOME}/bin:${PATH}"

ENV TOMCAT_NATIVE_LIBDIR $CATALINA_HOME/native-jni-lib
ENV LD_LIBRARY_PATH ${LD_LIBRARY_PATH:+$LD_LIBRARY_PATH:}$TOMCAT_NATIVE_LIBDIR

RUN set -eux; \
	apt-get update; \
	xargs -rt apt-get install -y --no-install-recommends < "$TOMCAT_NATIVE_LIBDIR/.dependencies.txt"; \
	rm -rf /var/lib/apt/lists/*

CMD ["catalina.sh", "run"]

from tomcat.

brunoborges avatar brunoborges commented on June 14, 2024

@tianon you closed as Completed. Was there any work associated with this issue?

from tomcat.

tianon avatar tianon commented on June 14, 2024

I'm not sure I understand πŸ˜…

This isn't something we plan to action on, as discussed above (I just don't use GitHub's "close reasons" much because it being a simple "completed" vs "not planned" binary doesn't really convey much more accurately than the closed status already does in most cases).

The sample Dockerfile I've provided above is the most I plan to do here, leaving the larger discussion of "how nutty should the Tomcat matrix of builds be" for #299 instead. πŸ™‡

from tomcat.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.