These scripts are useful for building and testing on different versions of
Linux.

ORC is currently supported on:
* CentOS 6, 7, and 8
* Debian 8, 9, and 10
* Ubuntu 14, 16, and 18

To test against all of the Linux OSes against Apache's master branch:
1. cd docker
2. ./run-all.sh apache master

Using 'local' as the owner will cause the scripts to use the local repository.

The scripts are:
1. run-all.sh *owner* *branch* - test the given owner's branch on all OSes
2. run-one.sh *owner* *branch* *os* - test the owner's branch on one OS
3. reinit.sh - rebuild all of the base images without the image cache

A base image for each OS is built using:
1. cd docker/$os
2. docker build -t orc-$os .

To clean up docker:
1. docker container prune
2. docker image prune
