DataWave Quickstart Docker Image
Goals
-
Provide a containerized, standalone DataWave environment to jumpstart the learning process for new users
-
Provide a fully-configured dev environment for developers to use for experimentation, debugging, etc. That is, the Docker image retains the same layout and functionality of the non-Docker quickstart environment. For convenience, the image will also include Maven for rebuilding DataWave and Git for source code management
-
Enable streamlined testing and integration workflows for various CI/CD needs
Scripts
Note that the scripts below for building/running the datawave-quickstart container assume that the user executing them is in the local docker group and may thus execute docker commands without requiring sudo. For example, to ensure that this is the case:
$ cat /etc/group | grep -qE '^docker:' || sudo groupadd docker
$ sudo usermod -aG docker yourusername
docker-run.sh
- Wrapper script for running the quickstart container via
docker run .... Includes set up for volumes, port mappings, etc
docker-entrypoint.sh
- ENTRYPOINT script for the Docker container
datawave-bootstrap.sh
- Helper script for starting up DataWave ingest and web service components in the container, via
--ingestand--webflags respectively. When invoked with the--bashflag, the script willexec /bin/bashas the main container process, appropriate fordocker run -itusage. Without the--bashflag, the script will go into an infinite loop after starting services, more appropriate fordocker run -dusage