Fabric8 is a Microservices platform on top of Kubernetes and OpenShift. It includes also a set of Docker images for creating Microservices but which are also usable as general Docker base images. This document gives an overview of all images available.
These images came as families, whose members are slight variations with different flavors. E.g. the Java base image has variants based on CentOS, Alpine or jboss/base-jdk
for Java 7 and 8 with including the full JDK or only the JRE. These families are created from templates with the help of fish-pepper, a templating engine for Docker builds. Each image family shares the same release cycle (i.e. the version) and are available from index.docker.io.
All images share some common characteristics as they include shared fish-pepper blocks:
-
run-java.sh is a generic startup script for starting Java application which can be influenced by various environment variables. It is also used in server images for seting container specific limits (e.g. memory limits).
-
Agent Bond is a super JVM agent which includes Jolokia for accessing JMX information and jmx_exporter for exposing Prometheus metrics. These agents also can be enabled / disabled and configured with environment variables.
The following images are available. Please refer to their GitHub and DockerHub repos for more details and usage information.
The Java base image contain a generic shell startup script which startups Java application stored in a directory either as flat classpath application or as a fat jar.
Image | GitHub | DockerHub |
---|---|---|
Java 8 derived from jboss/base-jdk:8 |
||
Java 7 derived from jboss/base-jdk:7 |
||
OpenJDK 8, JDK on Alpine Linux |
||
OpenJDK 8, JRE on Alpine Linux |
||
OpenJDK 7, JDK on Alpine Linux |
||
OpenJDK 7, JRE on Alpine Linux |
||
OpenJDK 8, JDK on CentOS |
||
OpenJDK 8, JRE on CentOS Linux |
||
OpenJDK 7, JDK on CentOS Linux |
||
OpenJDK 7, JRE on CentOS Linux |
The Jetty server images automatically deploy any wars found under a certain directory, /deployments
by default. These images can be used either as base images for your application, or linked together with a data container during runtime. These images are based directly on jboss/base-jdk:8.
Image | GitHub | DockerHub |
---|---|---|
Jetty 7 |
||
Jetty 8 |
||
Jetty 9 |
The Tomcat server images automatically deploy any wars found under a certain directory, /deployments
by default. These images can be used either as base images for your application, or linked together with a data container during runtime. These images are based directly on jboss/base-jdk:8.
Image | GitHub | DockerHub |
---|---|---|
Tomcat 6 |
||
Tomcat 7 |
||
Tomcat 8 |
||
Tomcat 9 |
The Karaf server images automatically deploy any wars found under a certain directory, /deployments
by default. These images can be used either as base images for your application, or linked together with a data container during runtime. These images are based directly on jboss/base-jdk:8.
Image | GitHub | DockerHub |
---|---|---|
Karaf 2.4 |
||
Karaf 3 |
||
Karaf 4 |
For OpenShift Source-2-Image Build, two builder images are provided in fabric8io-images/s2i. These are useful for creating S2I build for generice Java and Karaf based applications.
Image | GitHub | DockerHub |
---|---|---|
S2I Java Builder Image |
||
S2I Karaf Builder Image |