All Projects → lucee → lucee-dockerfiles

lucee / lucee-dockerfiles

Licence: MIT license
Official Lucee Dockerfiles for Docker Hub build images

Programming Languages

ColdFusion
112 projects
javascript
184084 projects - #8 most used programming language
python
139335 projects - #7 most used programming language
Dockerfile
14818 projects
CSS
56736 projects
shell
77523 projects

Projects that are alternatives of or similar to lucee-dockerfiles

lucee-docs
Source and build scripts for Lucee's documentation.
Stars: ✭ 39 (-51.85%)
Mutual labels:  lucee
core
FarCry Core: a web app framework for the ColdFusion language (supporting Lucee & Adobe ColdFusion engines). An ideal platform for building bespoke or tailor made solutions.
Stars: ✭ 34 (-58.02%)
Mutual labels:  lucee
ubuntu-nginx-lucee
Script for standing up a Lucee server using nginx and Tomcat on Ubuntu
Stars: ✭ 82 (+1.23%)
Mutual labels:  lucee
lucee-performance-analyzer
Performance Analyzer plugin for Lucee, to be used in the Lucee Admin or Standalone.
Stars: ✭ 29 (-64.2%)
Mutual labels:  lucee
cfwheels-example-app
A CFWheels 2.x App with user management, role based permissions and password resets
Stars: ✭ 17 (-79.01%)
Mutual labels:  lucee
cfml-tags-to-cfscript
A collection of examples defining how to convert CFML code blocks written in tags to CFScript.
Stars: ✭ 30 (-62.96%)
Mutual labels:  lucee
cf-mailchimp
ColdFusion wrapper for the MailChimp 3.0 API
Stars: ✭ 17 (-79.01%)
Mutual labels:  lucee
lucee-websocket
Enables server WebSockets for Lucee via JSR-356 compliant servlet containers (e.g. Tomcat 8, Jetty 9.1, etc.)
Stars: ✭ 16 (-80.25%)
Mutual labels:  lucee

Lucee Docker Images

Build Lucee Docker Images docker pulls

Lucee application engine running on Apache Tomcat J2EE application server.

Supported tags and respective Dockerfile links

Latest stable release (5.3)

Tomcat 9.0 with OpenJDK 11 (recommended)

  • 5.3.9.133-tomcat9.0-jdk11-openjdk, 5.3.9.133, 5.3, latest (Dockerfile)
    • 5.3.9.133-nginx-tomcat9.0-jdk11-openjdk, 5.3.9.133-nginx, 5.3-nginx (Dockerfile.nginx)

Tomcat 9.0 with OpenJDK 8

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.9.133-tomcat9.0-jdk11-openjdk).

The tag naming convention is;

LUCEE_VERSION[-RELEASE_TYPE][-light][-nginx][-TOMCAT_VERSION-JRE_VERSION]

  • LUCEE_VERSION is the Lucee Version number string. For simple tags it may optionally be in the MAJOR.MINOR format (e.g. 5.3) and for full tags it's in the MAJOR.MINOR.PATCH.BUILD format (e.g. 5.3.9.133). Snapshot, RC and Beta builds always include the full version number.
  • RELEASE_TYPE is the type of release; omitted for Releases, otherwise SNAPSHOT, RC or BETA
  • -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-jdk11-openjdk vs tomcat9.0-jdk8-openjdk). This is omitted for "simple tags" where the recommended Tomcat and OpenJDK versions are used.

Note: The official Tomcat images have removed support for Alpine and so the Lucee -alpine variant can no longer be supported. If the Tomcat base images add support for Alpine in the future then we will look to support the -alpine variant again.

Previous stable release (5.2)

Tomcat 8.5 with OpenJDK 8

Bleeding edge Snapshot / RC / Beta (5.3)

  • 5.3.7.34-SNAPSHOT-tomcat9.0-jdk11-openjdk, 5.3.7.34-SNAPSHOT
    • 5.3.7.34-SNAPSHOT-nginx-tomcat9.0-jdk11-openjdk, 5.3.7.34-SNAPSHOT-nginx
  • 5.3.7.34-RC-tomcat9.0-jdk11-openjdk, 5.3.7.34-RC
    • 5.3.7.34-RC-nginx-tomcat9.0-jdk11-openjdk, 5.3.7.34-RC-nginx
  • 5.3.1.15-BETA-tomcat9.0-jre11, 5.3.1.15-BETA
    • 5.3.1.15-BETA-nginx-tomcat9.0-jre11, 5.3.1.15-BETA-nginx

The SNAPSHOTS Docker image builds are automatically generated after a successful Lucee build. The 5.3.7.34-SNAPSHOT version number above is an example of the latest SNAPSHOT version number; check the Docker Hub tags and/or the Lucee Downloads page to see the latest SNAPSHOT version numbers.

The RC and Beta builds are manually triggered when they are announced.

For more information about Lucee versions and extensions see the Lucee Downloads page.

Example Project Dockerfile

For the latest stable release with Tomcat only:

FROM lucee/lucee:5.3

# Lucee configs
COPY config/lucee/ /opt/lucee/web/
# Code
COPY www /var/www

For the latest stable release with NGINX and Tomcat:

FROM lucee/lucee:5.3-nginx

# NGINX configs
COPY config/nginx/ /etc/nginx/
# Lucee configs
COPY config/lucee/ /opt/lucee/web/
# Code
COPY www /var/www

Features

Java optimisation tweaks

Optimised for single-site application

The default configuration serves a single application for any hostname on the listening port. Multiple applications can be supported by editing the server.xml in the Tomcat config.

Using this image

Accessing the service

Lucee server's Tomcat installation listens on port 8888.

This base image exposes port 8080 to linked containers but its not used. You must publish or expose port 8888 if you wish to access Tomcat from your installation.

Accessing the Lucee Admin

The Lucee Admin URL is /lucee/admin/ from the exposed port. No admin passwords are set.

THIS IS NOT A SECURE CONFIGURATION FOR PRODUCTION ENVIRONMENTS! It is strongly recommended that you secure the container by:

  • Changing the server password
  • Using IP or URL filtering to restrict access to the Lucee Admin
  • Following recommended security practices such as the Lucee Lockdown Guide

The NGINX tagged Docker images are configured to deny access to the Lucee Admin by default in the default.conf.

Folder locations

Web root for default site: /var/www

Configuration folders:

  • Tomcat config: /usr/local/tomcat/conf
  • Lucee config for default site: /opt/lucee/web
  • Lucee server context: /opt/lucee/server/lucee-server/context

Log folders:

  • Tomcat logs: /usr/local/tomcat/logs
  • Lucee logs for default site: /opt/lucee/web/logs

Environment variables

The default image contains scripts that use the following environment variables if they are set in the container.

LUCEE_JAVA_OPTS: Additional JVM parameters for Tomcat. Used by /usr/local/tomcat/bin/setenv.sh. Default: "-Xms64m -Xmx512m".

Legacy Lucee Base Images

The older Lucee Base Images will remain available for the projects that are using them, though the build process for those images is considered "legacy" as they have been superseded by the new build matrix builds.

The base images can be accessed in the existing Docker Hub repositories and the source is now in the legacy branch;

https://github.com/lucee/lucee-dockerfiles/tree/legacy

Lucee 5.2 (Legacy builds)

Lucee 5.1 (Legacy builds)

Lucee 5.0 (Legacy builds)

Lucee 4.5 (Legacy builds)

Contributing to this Project

The Lucee Dockerfiles project is maintained by the community. Chief protagonist is @justincarter (Justin Carter of Daemon). Bug reports and pull requests are most welcome.

Special thanks to @rye (Kristofer Rye) and @hawkrives (Hawken Rives) for their work on the Travis build matrix.

License

The Docker files and config files are available under the MIT License. The Lucee engine, Tomcat, NGINX and any other softwares are available under their respective licenses.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].