This repo contains a set of Docker containers for building and running MarkLogic server.
There are three images
coreosis the Fedora 23 base systemrunneris a minimal container for running MarkLogic Serverbuilderis configured to allow you to build the server
The coreos container installs Fedora 23 and sets up Java. It creates
one non-root user that you can use when docker execing into the
container.
There are three build arguments:
javaa path to a Java RPM to install, you must supply thisuserthe name of the non-root user, defaults todevuseruidthe UID of the non-root user, defaults to1000
By setting the user and uid arguments appropriately, you can allow
the user logged into the container to update volumes mounted on it.
The runner container installs and runs MarkLogic server. You must
supply a MarkLogic RPM to the marklogic build argument. You can
download them from http://developer.marklogic.com/
This container also installs the MarkLogic Python API.
There are two build arguments:
marklogica path to a MarkLogic RPM to install, you must supply thisuserthe name of the non-root user, defaults todevuserand must be the same as theuserpassed to thecoreosimage
The builder container extends the coreos container with build
tools sufficient to compilee MarkLogic Server. (Assuming, of course,
that you have access to the sources.)
There’s a single build argument:
userthe name of the non-root user, defaults todevuserand must be the same as theuserpassed to thecoreosimage
Optional: two scripts exists to 'pull' these files during the build.
They are meant to be augmented and are only called if apprprate rpms
are not found. The getjava.sh script will pull a java 1.8_60 JDK from
oracle. The getml.sh script will simply remind you to obtain a
MarkLogic rpm
A build script is provided in bin.
Usage:
./build.sh [coreos|runner|builder] {--tag tag} {--user devuser} {--uid 1000}
This builds one of 3 variants. You must build coreos first. If you specify
a tag for the coreos image, then you’ll have to modify the Dockerfiles for
the other images.