Files in directory /container from the latest check-in
- Makefile
- README.md
This is a variant of the upstream container build system with a few key differences:
It builds the container with the “
fossil
” user as ID 1000 to integrate the bind mounts with directories owned by my web host’s primary user.It can optionally tag everything and push it up to Docker Hub, which I use to update my
fossil
images.It wraps the stock Fossil container build processes to automate as much as possible, reducing common tasks to single short commands such as “
make push
”.
We do all of these overrides in our custom Makefile, which reuses
the upstream Dockerfile
as-is to avoid forking its
development. This is possible despite the differences listed above
because we carefully crafted that Dockerfile
to allow extensions and
overrides, allowing us to use them in “leaf” projects like this one.
In the same manner, you can take this project’s build system and get broader custom effects. For example, if you wanted the JSON API enabled in your local container builds, rather than start over from scratch, you could simply say:
$ make DBFLAGS='--build-arg FSLCFG=--json'