For local development and testing, you can run the engine in a Docker container.
The steps are:
Bundle the engine and its dependencies.
Build a Docker image.
Create a Docker container.
blimp/engine:blimp_engine_bundle build target will bundle the engine and its dependencies into a tarfile, which can be used to build a Docker image. This target is always built as part of the top-level
blimp/engine/engine-manifest.txt is a list of the engine's runtime dependencies. From time to time, this list may need to be updated. Use
blimp/tools/generate-engine-manifest.py to (re)generate the manifest:
./blimp/tools/generate-engine-manifest.py \ --build-dir out-linux/Debug \ --target //blimp/engine:blimp_engine \ --output blimp/engine/engine-manifest.txt
Be sure to review the generated manifest and remove any false runtime dependencies.
Using the tarfile you can create a Docker image:
docker build -t blimp_engine - < ./out-linux/Debug/blimp_engine_bundle.tar
From the Docker image you can create a Docker container (i.e. run the engine):
docker run blimp_engine
You can also pass additional flags:
docker run blimp_engine --with-my-flags
See the blimp engine
Dockerfile to find out what flags are passed by default.
If you need to map a directory into the Docker container (eg. for necessary files):
docker run -v /path/to/srcdir:/path/to/docker/destdir blimp_engine
NB: The permissions of the directory and the files outside of the Docker container will be carried over into the container.