14 Commits

Author SHA1 Message Date
jason a75575915d 🐛 Fix __exec_command dropping all arguments after the first 🐛
Build and Push 10-dev / build (push) Has been cancelled
Build and Push 10 / build (push) Has been cancelled
Build and Push 8-dev / build (push) Has been cancelled
Build and Push 8 / build (push) Has been cancelled
Build and Push 9-dev / build (push) Has been cancelled
Build and Push 9 / build (push) Has been cancelled
Build and Push / build (push) Has been cancelled
__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
2026-06-29 00:47:19 -04:00
jason f512c1b7b2 🗃 Modified: rootfs/usr/local/etc/resolv.conf 🗃
Modified: rootfs/usr/local/etc/resolv.conf
2026-06-26 15:45:41 -04:00
jason 08bef0b31d 🗃 Modified: rootfs/usr/local/etc/docker/functions/entrypoint.sh 🗃
Modified: rootfs/usr/local/etc/docker/functions/entrypoint.sh
2026-06-26 15:45:41 -04:00
jason 482f1e6cdb 🐛 Fix resolv.conf: add search . and ndots:0 to block domain search 🐛
--domainname on the container sets the kernel domainname, which c-ares
uses to infer a search domain even when /etc/resolv.conf has no search
line. This caused c-ares to query github.com.casjay.work AAAA and get
the host's own IPv6 address, routing all outbound HTTPS to the local
nginx instead of the real server.
Adding 'search .' and 'options ndots:0' explicitly disables search
domain inference regardless of the kernel domainname setting.
- rootfs/usr/local/etc/resolv.conf: add search . and options ndots:0

rootfs/usr/local/etc/resolv.conf
2026-06-05 14:36:05 -04:00
jason 9c41f2ee57 🐛 Fix container DNS: ship resolv.conf without search domain 🐛
Hosts with a search domain cause containers to inherit it. When the
zone has a wildcard AAAA record, public hostnames resolve to the host's
own IPv6 address instead of the real server, breaking all outbound
HTTPS and DNS from inside the container.
The entrypoint already has a hook: if /usr/local/etc/resolv.conf
exists it replaces /etc/resolv.conf at container startup. Ship a
clean resolv.conf with Cloudflare + Google DNS and no search domain
so container DNS is always correct regardless of host configuration.
- rootfs/usr/local/etc/resolv.conf: new file — clean DNS, no search domain

rootfs/usr/local/etc/resolv.conf
2026-06-05 12:36:58 -04:00
jason d1e07ea4da 🔧 Update docker functions/entrypoint.sh to latest 🔧
Synced from casjay-dotfiles templates. Updated functions now check
for existence before copying template-files directories, skipping
gracefully when they are absent.
- rootfs/usr/local/etc/docker/functions/entrypoint.sh: updated to latest

rootfs/usr/local/etc/docker/functions/entrypoint.sh
2026-06-04 11:51:56 -04:00
jason 94461d1fe2 🔧 Update scripts, remove certbot, add CA cert update 🔧
Update all container scripts to 202605241245-git, remove certbot from
all package lists, and add CA certificate update step after install.
- .env.scripts*: remove certbot from ENV_PACKAGES (all 7 version files)
- Dockerfile*: remove certbot from PACK_LIST (all 7 version Dockerfiles)
- rootfs/root/docker/setup/00-init.sh: updated to latest template
- rootfs/root/docker/setup/01-system.sh: updated to latest template
- rootfs/root/docker/setup/02-packages.sh: add update-ca-trust extract step
- rootfs/root/docker/setup/03-files.sh: updated to latest template
- rootfs/root/docker/setup/04-users.sh: updated to latest template
- rootfs/root/docker/setup/05-custom.sh: updated to latest template
- rootfs/root/docker/setup/06-post.sh: updated to latest template
- rootfs/root/docker/setup/07-cleanup.sh: updated to latest template
- rootfs/usr/local/bin/entrypoint.sh: updated to 202605241245-git
- rootfs/usr/local/bin/pkmgr: updated to 202605241245-git
- rootfs/usr/local/etc/docker/functions/entrypoint.sh: updated to 202605241245-git

Dockerfile
Dockerfile.10
Dockerfile.10-dev
Dockerfile.8
Dockerfile.8-dev
Dockerfile.9
Dockerfile.9-dev
.env.scripts
.env.scripts.10
.env.scripts.10-dev
.env.scripts.8
.env.scripts.8-dev
.env.scripts.9
.env.scripts.9-dev
rootfs/root/docker/setup/00-init.sh
rootfs/root/docker/setup/01-system.sh
rootfs/root/docker/setup/02-packages.sh
rootfs/root/docker/setup/03-files.sh
rootfs/root/docker/setup/04-users.sh
rootfs/root/docker/setup/05-custom.sh
rootfs/root/docker/setup/06-post.sh
rootfs/root/docker/setup/07-cleanup.sh
rootfs/usr/local/bin/entrypoint.sh
rootfs/usr/local/bin/pkmgr
rootfs/usr/local/etc/docker/functions/entrypoint.sh
2026-05-24 21:44:59 -04:00
jason 9933eb12e1 🗃️ rootfs: shield internal entrypoint PID files from /run/*.pid sweeps 🗃️
Update the embedded entrypoint copies in rootfs/ to match the
upstream template change. Internal state files renamed to dotfiles
so they're not matched by `/run/*.pid` cleanup globs:
- /run/init.d/entrypoint.pid -> /run/.entrypoint.pid
- /run/no_exit.pid -> /run/.no_exit.pid
- /run/backup.pid -> /run/.backup.pid
- /run/__start_init_scripts.pid -> /run/.start_init_scripts.pid
Per-service PIDs in /run/init.d/ are unchanged.

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/zz-entrypoint.sh
2026-05-05 19:13:48 -04:00
jason dcf0db1167 🔧 Rename dockerfs to rootfs and update build files 🔧
- Renamed dockerfs directory to rootfs across setup scripts, entrypoint, and template files
- Updated all Dockerfiles (8, 9, 10 and dev variants) to reflect new rootfs path
- Added new helper utilities copy and symlink under rootfs/usr/local/bin
- Refreshed README.md to align with the renamed directory structure

Dockerfile
Dockerfile.10
Dockerfile.10-dev
Dockerfile.8
Dockerfile.8-dev
Dockerfile.9
Dockerfile.9-dev
dockerfs/root/docker/setup/00-init.sh
dockerfs/root/docker/setup/01-system.sh
dockerfs/root/docker/setup/02-packages.sh
dockerfs/root/docker/setup/03-files.sh
dockerfs/root/docker/setup/04-users.sh
dockerfs/root/docker/setup/05-custom.sh
dockerfs/root/docker/setup/06-post.sh
dockerfs/root/docker/setup/07-cleanup.sh
dockerfs/usr/local/bin/entrypoint.sh
dockerfs/usr/local/bin/pkmgr
dockerfs/usr/local/etc/docker/functions/entrypoint.sh
dockerfs/usr/local/share/template-files/config/env/default.sample
dockerfs/usr/local/share/template-files/config/env/examples/00-directory.sh
dockerfs/usr/local/share/template-files/config/env/examples/addresses.sh
dockerfs/usr/local/share/template-files/config/env/examples/certbot.sh
dockerfs/usr/local/share/template-files/config/env/examples/couchdb.sh
dockerfs/usr/local/share/template-files/config/env/examples/dockerd.sh
dockerfs/usr/local/share/template-files/config/env/examples/global.sh
dockerfs/usr/local/share/template-files/config/env/examples/healthcheck.sh
dockerfs/usr/local/share/template-files/config/env/examples/mariadb.sh
dockerfs/usr/local/share/template-files/config/env/examples/mongodb.sh
dockerfs/usr/local/share/template-files/config/env/examples/networking.sh
dockerfs/usr/local/share/template-files/config/env/examples/other.sh
dockerfs/usr/local/share/template-files/config/env/examples/php.sh
dockerfs/usr/local/share/template-files/config/env/examples/postgres.sh
dockerfs/usr/local/share/template-files/config/env/examples/redis.sh
dockerfs/usr/local/share/template-files/config/env/examples/services.sh
dockerfs/usr/local/share/template-files/config/env/examples/ssl.sh
dockerfs/usr/local/share/template-files/config/env/examples/supabase.sh
dockerfs/usr/local/share/template-files/config/env/examples/webservers.sh
dockerfs/usr/local/share/template-files/config/env/examples/zz-entrypoint.sh
dockerfs/usr/local/share/template-files/config/.gitkeep
dockerfs/usr/local/share/template-files/data/.gitkeep
dockerfs/usr/local/share/template-files/defaults/.gitkeep
README.md
rootfs/usr/local/bin/copy
rootfs/usr/local/bin/symlink
2026-05-05 14:34:55 -04:00
jason 40d0d41781 🗃️ Updated workflows and moved rootfs 🗃️
Dockerfile
Dockerfile.10
Dockerfile.10-dev
Dockerfile.8
Dockerfile.8-dev
Dockerfile.9
Dockerfile.9-dev
dockerfs/
.gitea/workflows/docker.10-dev.yaml
.gitea/workflows/docker.10.yaml
.gitea/workflows/docker.8-dev.yaml
.gitea/workflows/docker.8.yaml
.gitea/workflows/docker.9-dev.yaml
.gitea/workflows/docker.9.yaml
.gitea/workflows/docker.yaml
.github/
README.md
rootfs/root/docker/setup/00-init.sh
rootfs/root/docker/setup/01-system.sh
rootfs/root/docker/setup/02-packages.sh
rootfs/root/docker/setup/03-files.sh
rootfs/root/docker/setup/04-users.sh
rootfs/root/docker/setup/05-custom.sh
rootfs/root/docker/setup/06-post.sh
rootfs/root/docker/setup/07-cleanup.sh
rootfs/usr/local/bin/entrypoint.sh
rootfs/usr/local/bin/pkmgr
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/00-directory.sh
rootfs/usr/local/share/template-files/config/env/examples/addresses.sh
rootfs/usr/local/share/template-files/config/env/examples/certbot.sh
rootfs/usr/local/share/template-files/config/env/examples/couchdb.sh
rootfs/usr/local/share/template-files/config/env/examples/dockerd.sh
rootfs/usr/local/share/template-files/config/env/examples/global.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/mongodb.sh
rootfs/usr/local/share/template-files/config/env/examples/networking.sh
rootfs/usr/local/share/template-files/config/env/examples/other.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/redis.sh
rootfs/usr/local/share/template-files/config/env/examples/services.sh
rootfs/usr/local/share/template-files/config/env/examples/ssl.sh
rootfs/usr/local/share/template-files/config/env/examples/supabase.sh
rootfs/usr/local/share/template-files/config/env/examples/webservers.sh
rootfs/usr/local/share/template-files/config/env/examples/zz-entrypoint.sh
rootfs/usr/local/share/template-files/config/.gitkeep
rootfs/usr/local/share/template-files/data/.gitkeep
rootfs/usr/local/share/template-files/defaults/.gitkeep
2026-01-15 23:48:02 -05:00
jason cce1fe8739 🗃️ Update codebase 🗃️
rootfs/usr/local/bin/entrypoint.sh
rootfs/usr/local/etc/docker/functions/entrypoint.sh
2025-11-30 18:27:25 -05:00
jason b45152270c 🗃️ Update codebase 🗃️
rootfs/usr/local/bin/entrypoint.sh
rootfs/usr/local/etc/docker/functions/entrypoint.sh
2025-11-30 16:17:32 -05:00
jason 5a9e3fe128 🗃 Modified: rootfs/usr/local/etc/docker/functions/entrypoint.sh 🗃
Modified: rootfs/usr/local/etc/docker/functions/entrypoint.sh
2025-11-29 11:55:16 -05:00
jason d440c11c81 🦈🏠🐜 Initial Commit 🐜🦈🏠 2025-11-29 11:11:32 -05:00