This repository contains all base Dockerfiles for Docker that I used, published to Docker registry.
- oracle-java: Base image with Oracle JDK, providing versions for java 6, 7 and 8. Additionally, updates Java Cryptography Extension (JCE).
- maven: Base image with Apache Maven, providing versions for java 7 and 8.
- tomcat: Base image with Apache Tomcat, providing versions with Oracle JDK 7 and 8.
- wildfly: Base image with JBoss WildFly, providing versions with Oracle JDK 7 and 8.
- jboss-as: Base image with old versions of JBoss Application Server, providing versions for families 4.X and 5.X.
- mule-esb: Docker Image packaging for MuleESB with Oracle JDK 7.
- grunt: Debian Jessie based image with NodeJS, Grunt and Bower installed.
This section cover information to anyone who may contribute to this project, or wants to tweak it for its own uses.
For maintainability some base images are created using templates. For instance:
- Tomcat
These images are based in docker-template project. It provides the infrastructure, parsing e generation of the Dockerfiles
based in [ERB] templates. It also uses variables defined in opts.yml
files to drive the templated data. For details about how to write images based in docker-template, see docker-template wiki, as its example projects jekyll-docker and envygeeks-docker.
Docker-template is not meant to handle the images as we do here. More than just processing the templates, it focus in building and pushing directly the images. We use it only as an engine to parse our templates, but we keep the resulting Dockerfiles
. As we use webhooks to trigger images build and push to Docker Hub. To fill the gap, we use the docker-template-wrapper, a shell script wrapper around docker-template that allow us to manage the images just as we do here.
See docker-template-wrapper README to know how to use it.