The Docker image for Lucee 5.3.2.77 is now available;
https://hub.docker.com/r/lucee/lucee
The Lucee Docker images are now in a new lucee/lucee
repository with a build process that generates a number of different tagged images from a matrix of the Lucee version, Tomcat Version, OpenJDK version and optional bundled NGINX and optional Alpine base image.
The same Tomcat base images are still used and the Lucee, Tomcat, and nginx configurations are all largely untouched, which means there shouldn’t be any significant issues moving from an older base image to a newer one in terms of modifications to your own Dockerfile
as all the container paths remain the same.
Updating the base image in your own projects Dockerfile
should simply involve changing the FROM
instruction, for example Lucee 5.2 + NGINX to Lucee 5.3 + NGINX;
FROM lucee/lucee52-nginx:latest
to
FROM lucee/lucee:5.3-nginx
The default application stack for Lucee 5.3 is now Java 11 (OpenJDK 11) and Tomcat 9.0, since Java 8 is EOL. Depending on your applications use of Java this might be a simple upgrade, or you might need to temporarily revert to Java 8 while any issues are resolved. We do have jre8
tags for that
Read on below for the notes from the README about how the tags work…
Supported tags and respective Dockerfile links
Latest stable release (5.3)
Tomcat 9.0 with OpenJDK 11 (recommended)
-
5.3.2.77-tomcat9.0-jre11
,5.3.2.77
,5.3
,latest
(Dockerfile)-
5.3.2.77-nginx-tomcat9.0-jre11
,5.3.2.77-nginx
,5.3-nginx
(Dockerfile.nginx)
-
Tomcat 9.0 with OpenJDK 8
-
5.3.2.77-tomcat9.0-jre8
, (Dockerfile)-
5.3.2.77-nginx-tomcat9.0-jre8
(Dockerfile.nginx) -
5.3.2.77-tomcat9.0-jre8-alpine
, (Dockerfile) -
5.3.2.77-nginx-tomcat9.0-jre8-alpine
(Dockerfile.nginx.alpine)
-
How the tags work
The Lucee Docker image tags follow a naming convention which is used to produce “simple tags” that are updated with each release (e.g. 5.3
, 5.3-nginx
) as well as “full tags” which allow for very specific version targeting (e.g. 5.3.2.77-tomcat9.0-jre11
).
The tag naming convention is;
LUCEE_VERSION[-RELEASE_TYPE][-light][-nginx][-TOMCAT_VERSION-JRE_VERSION][-alpine]
-
LUCEE_VERSION
is the Lucee Version number string. For simple tags it may optionally be in theMAJOR.MINOR
format (e.g.5.3
) and for full tags it’s in theMAJOR.MINOR.PATCH.BUILD
format (e.g.5.3.2.77
). Snapshot, RC and Beta builds always include the full version number. -
RELEASE_TYPE
is the type of release; omitted for Releases, otherwiseSNAPSHOT
,RC
orBETA
-
-light
(optional) is a build with the Lucee “Light” JAR file, WITHOUT any extensions (users must install extensions separately, this includes database drivers, ORM, ESAPI, S3, image handling, etc) -
-nginx
(optional) is a build with the NGINX web server bundled and configured -
-TOMCAT_VERSION-JRE_VERSION
is the Tomcat major and minor version and OpenJDK major version of the build to allow users to choose between different combinations (e.g.tomcat9.0-jre11
vstomcat9.0-jre8
). This is omitted for “simple tags” where the recommended Tomcat and OpenJDK versions are used. -
-alpine
(optional) is a build using Alpine Linux as the base image. This results in a smaller Docker image which may be useful in some scenarios. NOTE: Alpine images currently supportjre8
only,jre11
/ Java 11 is not available. Alpine “simple tags” such as5.3-alpine
will be added in future builds
Legacy Lucee Docker image builds
The older Lucee Docker images will remain available in their existing Docker Hub repositories, though the build process for those images is considered “legacy” as they have been superseded by the new build matrix builds. The corresponding source is now in the legacy
branch in GitHub;
Feedback
Please give the new Docker images a try and feel free to provide feedback here on the forum, or log a GitHub Issue if you have a specific problem that needs to be addressed.