The UI should be built and served separately, not from within the
production container.
The tests should be run separately as well and are not needed from
within the production container.
This includes the code files in the docker image and creates a separate
data dir, which means we don't need to manually mount files into the
container anymore.