There were various mistakes in the shell scripts, such as lack of
quoting; they would break them immediately e.g. if `BIN_DIR` contained a space.
Pointed out by `shellcheck`.
This means the migrations can always be run on startup, meaning the database won't get out of sync with the running application. It also means users who don't set the credential variables in their compose files don't keep creating admin users every time the application starts.