__exec_command was using ${arg:-} which only captured the first element
of the args array, then ran it through "$shell" $pre_exec "$cmdExec"
which effectively discarded everything after $1.
Running `docker run image sh -c 'go build ...'` would:
1. Set arg=("sh" "-c" "go build ...")
2. Set cmdExec="sh" (only first element)
3. Run bash --login -c "sh" (dropping -c and the actual command)
This broke any Makefile GO_DOCKER pattern that relied on passing multi-arg
commands. Simplified to just `exec "$@"` which passes all args through.
- rootfs/usr/local/etc/docker/functions/entrypoint.sh: rewrite __exec_command
rootfs/usr/local/etc/docker/functions/entrypoint.sh
The entrypoint.sh sources /usr/local/etc/docker/functions/entrypoint.sh
but the file was never added to the repo. Container would silently fail
to load any helper functions at runtime.
- rootfs/usr/local/etc/docker/functions/entrypoint.sh: added from
casjay-dotfiles templates
rootfs/usr/local/etc/
- Removed legacy entrypoint.sh from rootfs/usr/local/bin and functions directory
- Added new healthcheck script to rootfs/usr/local/bin
- Updated copy and symlink helper scripts in rootfs/usr/local/bin
- Refreshed environment templates and example configs for services
- Updated Dockerfile and .env.scripts to align with new layout
Dockerfile
.env.scripts
rootfs/usr/local/bin/copy
rootfs/usr/local/bin/entrypoint.sh
rootfs/usr/local/bin/healthcheck
rootfs/usr/local/bin/symlink
rootfs/usr/local/etc/docker/functions/entrypoint.sh
rootfs/usr/local/share/template-files/config/env/default.sample
rootfs/usr/local/share/template-files/config/env/examples/addresses.sh
rootfs/usr/local/share/template-files/config/env/examples/healthcheck.sh
rootfs/usr/local/share/template-files/config/env/examples/mariadb.sh
rootfs/usr/local/share/template-files/config/env/examples/php.sh
rootfs/usr/local/share/template-files/config/env/examples/postgres.sh
rootfs/usr/local/share/template-files/config/env/examples/webservers.sh
rootfs/usr/local/share/template-files/config/env/examples/zz-entrypoint.sh