This is still under development and not yet ready for use. I.e. it doesn't work.
KRE is difficult to install, relying on a number of outside packages and hundreds of Perl modules running in an Apache Web server being used as an application server along side a Mongo database and relying on Memcache and other services.
Docker to the rescue.
This repository contains the Dockerfiles and source repositories for building a series of Docker images that result in an image for a standalone KRE image that can be run as a Docker container.
- the actual application is located in an external volume to facilitate updating and developing KRE using this container. A production version of the container might choose to have the code inside the image.
- this is not a standalone KRE image since it also require MongoDB to run. Instructions on setting up and using a MongoDB for use with KRE are included.
The final docker image is built from a series of previous builds. Here's what's what:
- base00 — build minimal server from centos6 image
- apache00 — install Apache HTTPD, mod_perl, and other Web-related packages
- memcachedb00 — install memcachedb and supporting files
- kre00 — install Perl packages
- kre01 — build with final configuration
These images build on each other in the order shown.
The following are not used and can be ignored
- mongo00
-
Build all the images in the Manifest above in the order shown. There's a
build
executable in each directory that should do this. -
Clone the KRE code to the
kre01
directory using this command:https://github.com/kre/Kinetic-Rules-Engine.git
-
Create the
kre_config
directory and install the configuration files (yeah, we need more here) -
Create the
logs
directory. -
Run
chown -R 2000:2000 Kinetic-Rules-Engine kre_config logs
so that they have the same ownership as the
web
user and group in the container. -
The
run
script in thekre01
directory should start KRE.
Mark Horstmeier wrote a set of KRE Installation scripts. Some of Mark's work was used to create the Docker images.