Kevin, it’s recently possible to specify the underlying openjdk image tag as a property in the Maven build, e.g., -Pdocker -Ddocker.image.tag=11-jre so it should be easier to start publishing those now too if it’s decided it’s a good idea.
The default remains 8 for the sorts of concerns being discussed, but this provides the flexibility for people to use an official source release to build 11-based images. -joey > On Mar 26, 2021, at 8:13 AM, Joe Witt <[email protected]> wrote: > > Good thread. I'd say when a NiFi 2 line happens Java 8 would be gone > completely and we would/should consider only supporting the latest LTS > line perhaps. > >> On Fri, Mar 26, 2021 at 8:05 AM Kevin Doran <[email protected]> wrote: >> >> Hi JL, >> >> It’s worth discussing/considering changes such as this periodically, so >> thanks for bringing it up. >> >> Personally, I would be hesitant to make such a large change. While it would >> likely be a net-positive for the NiFi image itself, I think it would impact >> a number of community members that have Dockerfile’s that use our image as a >> starting point. >> >> A GitHub code search [1] seems to confirm this, showing >100 Dockerfiles >> that contain “FROM apache/nifi*” >> >> For NiFi 1.x, I think the best we could do is leverage tagging to offer >> image variants that differ in layers we build upon, for example OS or >> JDK/JRE variants. This seems to be a popular method, for example, Apache >> Tomcat offers a multiple of combinations of version, JDK, and OS [2]. >> >> So if it would be beneficial, we could add official images for other jdk >> versions indicated by tags, for example apache/nifi:1.13.2, >> apache/nifi:1.13.2-jre11, etc. >> >> I believe this was part of the plan for the (empty) apache/nifi-container >> code repository [3]. I think the intention was always to build out a richer >> set of diverse container images based on files in this repository, which >> could be maintained/released decoupled from the NiFi source code itself. >> With so many in the community running containerized NiFi, perhaps it's worth >> reviving that discussion to see what, if anything, would be most valuable to >> add to our container offerings. >> >> For NiFi 2 we can and should definitely consider what changes we want to >> make to our “default” base image, including which JRE. >> >> [1] >> https://github.com/search?l=&q=%22FROM+apache%2Fnifi%22+language%3ADockerfile&type=code >> >> <https://github.com/search?l=&q=%22FROM+apache/nifi%22+language:Dockerfile&type=code> >> [2] https://hub.docker.com/_/tomcat?tab=description >> <https://hub.docker.com/_/tomcat?tab=description> >> [3] https://github.com/apache/nifi-container >> <https://github.com/apache/nifi-container> >> >> Thanks! >> Kevin >> >>>> On Mar 26, 2021, at 07:49, José Luis Pedrosa <[email protected]> wrote: >>> >>> Hi All >>> >>> I see that the docker images generated are based "openjdk:8-jre" should we >>> (I volunteer) to update them to "11-jre"? as both versions are supported (8 >>> and 11) I don't see any reason why not, and will be more future proof. >>> >>> Any opinions? >>> >>> JL >>> >>> >>> >>>> On Thu, Mar 18, 2021 at 1:59 PM Joe Witt <[email protected]> wrote: >>> >>>> Mark >>>> >>>> That we can do with a NiFi 2 release for sure. Before then it isnt great. >>>> >>>> Oracles JVM is not what I see mostly in the wild any longer and we do see a >>>> ton of Java 8 usage still. >>>> >>>> We can and should drop Java 8 but itll be important to do it when we cut a >>>> lot of crud out as well. >>>> >>>> Thanks >>>> >>>> On Thu, Mar 18, 2021 at 6:03 AM Mark Bean <[email protected]> wrote: >>>> >>>>> I'd like to discuss migrating to Java 11 as the minimum required Java >>>>> version for NiFi. We've been supporting both Java 8 and Java 11 for some >>>>> time now. There is increased overhead in verifying builds with two >>>>> different versions. There are some features and syntax available in Java >>>> 11 >>>>> which cannot be used in order for NiFi to remain compatible with both >>>>> versions. Java 8 premier support (Oracle) runs out in one year. Java 17 - >>>>> the next LTS version - is due out later this year. >>>>> >>>>> There should be plenty of lead time for users to prepare for the >>>>> transition. So I wanted to start the discussion well in advance of when >>>> we >>>>> discontinue Java 8 support. And, logistically how do we best inform the >>>>> community of upcoming changes like this? >>>>> >>>>> Thanks, >>>>> Mark >>>>> >>>> >>
