CloudFactory development is heavily invested in jruby based micro/nano/macro/... services hence it makes sense to have base docker image at that ground.
Phusion base-image is already a powerful docker base image. It sparked some discussion within container/docker pundits by allowing the capability of running multiple processes within a container. README from official website/repository is filled with very thorough information but just in case you are skimming over, here's the highlights
INIT
process/sbin/my_init
which read from centralized environment variables directory/etc/container_environment
. It also passesenv
vars correctly to forked processes.logrotate
that compresses and rotates log filesCRON
for scheduled task inside containersRUNIT
as a process supervisor.
How is it different than official jruby docker image?
- It is based on phusion-base image so all above features comes with it
jruby
is installed and managed via ruby-install.ruby-install
dynamically decides the required dependencies for jruby being installed.
All the Dockerfiles follow best practices too.