Commit Graph
47 Commits
Author SHA1 Message Date
casjay 40eae67d32 🗃️ Update codebase 🗃️
rootfs/usr/local/etc/docker/functions/entrypoint.sh
2026-08-02 20:44:05 -04:00
casjay 86a37476cd 🐛 Fix entrypoint hang and lost-interpreter bugs 🐛
- rootfs/usr/local/bin/entrypoint.sh:
  1. The "start all services" gate
     (`if [ "$START_SERVICES" = "yes" ] || [ -z "$1" ]`) always evaluated
     true on a first-run container regardless of $1, because
     START_SERVICES is force-set to "yes" whenever no PID file exists yet.
     Any command passed to `docker run` — `exec ...`, `sh -c ...`,
     `shell`, or an arbitrary program — was swallowed into the
     service-start+monitor branch before reaching the `case "$1"`
     statement that already handles those subcommands, hanging the
     container as a daemon instead of running the given command. Changed
     the condition to `if [ -z "$1" ]` so the daemon branch only fires
     when no command was given at all.
  2. The `*/bin/sh | */bin/bash | bash | sh | shell)` case branch
     unconditionally shifted $1 before `__exec_command "$@"` (a bare
     `exec "$@"`). For `docker run image sh -c 'cmd'` this turned the
     exec into `exec -c cmd` (command not found, exit 127) instead of
     `exec sh -c 'cmd'`. Split the branch: real interpreter names
     (*/bin/sh, */bin/bash, bash, sh) now pass through unshifted; the
     "shell" keyword (not a real interpreter) gets its own branch that
     shifts and prepends "sh" to any remaining args, or falls back to a
     bare `__exec_command` (exec bash -l) when none remain.
  Verified `bash -n` passes. Found and fixed upstream in
  dockersrc/go, confirmed identical in this repo's generated
  entrypoint.sh, and mechanically applied here with the same patch.
2026-07-27 23:25:44 -04:00
casjay 3d7e3342ce 📝 Migrate /var/lib/srv docker paths to /srv in README 📝
Update volume mount examples and dockerHome variable from
the old /var/lib/srv/$USER/docker layout to /srv/$USER/docker.
- README.md: update volume path references to /srv/$USER/docker

README.md
rootfs/usr/local/bin/copy
rootfs/usr/local/bin/healthcheck
rootfs/usr/local/bin/symlink
2026-07-10 12:17:22 -04:00
casjay f2e12a8b91 🗃️ Update codebase 🗃️
rootfs/usr/local/etc/docker/functions/entrypoint.sh
2026-06-26 23:51:37 -04:00
casjay 6102a494f8 🐛 Fix duplicate 2>/dev/null in entrypoint.sh /etc/hosts line 🐛
The grep -vF line that appends /usr/local/etc/hosts entries had a
duplicate 2>/dev/null redirect after the append operator, which is
a no-op but clutters the script. Synced from template.
- rootfs/usr/local/bin/entrypoint.sh: remove duplicate 2>/dev/null
from grep -vF /etc/hosts append line; bump version to 202606261500-git

rootfs/usr/local/bin/entrypoint.sh
2026-06-26 18:45:54 -04:00
casjay a52e3f42b3 🐛 Update entrypoint.sh and functions library from current template 🐛
Stale copies called __initialize_default_templates, __initialize_config_dir,
and __initialize_data_dir which are not in the old functions library,
causing container startup failures. Replaced with current template
versions (202606041210-git) which no longer call those missing functions.
- rootfs/usr/local/bin/entrypoint.sh: update to current template
- rootfs/usr/local/etc/docker/functions/entrypoint.sh: update to current template

rootfs/usr/local/bin/entrypoint.sh
rootfs/usr/local/etc/docker/functions/entrypoint.sh
2026-06-05 18:25:32 -04:00
casjay 8d4f31e859 🐛 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:34:17 -04:00
casjay cc29bf86f2 🐛 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:35:12 -04:00
casjay dd75ba53cb ♻️ Migrate podman to /config/ source-of-truth architecture ♻️
Migrate podman Docker image to the new build-time config architecture.
- rootfs/root/docker/setup/03-files.sh: rewrite to canonical form with /tmp/bin, /tmp/var, /tmp/etc, /tmp/usr handlers; remove template-files copy block
- rootfs/usr/local/etc/docker/functions/entrypoint.sh: update to latest template with __init_service_conf, __find_php_ini, __find_php_bin helpers
- rootfs/usr/local/etc/docker/init.d/*.sh: fix $(basename) UUOC → ${var##*/}; move inline comments above code lines; remove commented-out dead code
- rootfs/usr/local/share/template-files/: delete entire directory; config files now deployed via /tmp/etc/ at build time

rootfs/root/docker/setup/03-files.sh
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-06-04 14:47:36 -04:00
casjay b08fa924dc 🗃️ Updated the functions file 🗃️
rootfs/usr/local/etc/docker/functions/entrypoint.sh
2026-05-24 12:27:25 -04:00
casjay 08e63826be 🗃️ Removed the .claude/settings.local.json 🗃️
Dockerfile
.dockerignore
.env.scripts
.gitattributes
.gitea/workflows/docker.yaml
.gitignore
LICENSE.md
README.md
rootfs/usr/local/bin/entrypoint.sh
rootfs/usr/local/bin/pkmgr
2026-05-12 20:08:11 -04:00
casjay 120edb4479 🗃️ 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/entrypoint.sh
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:12:42 -04:00
casjay ca8ac1b515 🗃️ Update codebase 🗃️
rootfs/usr/local/bin/entrypoint.sh
rootfs/usr/local/etc/docker/functions/entrypoint.sh
2025-11-30 16:25:57 -05:00
casjay c1431694c7 🐳 Update entrypoint.sh in docker functions (rootfs/usr/local/etc/docker) 🐳
rootfs/usr/local/etc/docker/functions/entrypoint.sh
2025-11-30 16:05:41 -05:00
casjay 577cf68111 🗃️ Fixed the entrypoint scripts 🗃️
rootfs/usr/local/bin/entrypoint.sh
rootfs/usr/local/etc/docker/functions/entrypoint.sh
rootfs/usr/local/share/template-files/config/env/default.sample
2025-11-29 12:37:10 -05:00
casjay 628a38ccde 🗃️ Updated Dockerfile* and .env.scripts* 🗃️
Dockerfile
rootfs/usr/local/bin/entrypoint.sh
rootfs/usr/local/etc/docker/functions/entrypoint.sh
2025-11-29 11:04:46 -05:00
casjay acb7193073 🗃️ Fixed the .gitignore file 🗃️
.gitignore
2025-11-23 08:48:07 -05:00
casjay 75b4fa8868 🗃️ Fixed the .gitignore file 🗃️
.gitignore

Dockerfile
2025-10-31 12:34:16 -04:00
casjay a17ac94a40 🗃️ Fixed the .gitignore file 🗃️
.gitignore
2025-10-22 13:05:57 -04:00
casjay b5141d912b 🗃️ Committing everything that changed 🗃️
rootfs/usr/local/etc/docker/functions/entrypoint.sh
2025-09-20 06:39:45 -04:00
casjay 20934d68fa 🗃️ Committing everything that changed 🗃️
rootfs/usr/local/etc/docker/functions/entrypoint.sh
2025-09-20 05:27:57 -04:00
casjay eb0ae4cff2 🗃️ Committing everything that changed 🗃️
Dockerfile
.env.scripts
.gitattributes
.gitignore
rootfs/.gitea/
rootfs/root/
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/
2025-09-16 19:38:13 -04:00
casjay e0eb87b87f 🗃️ Committing everything that changed 🗃️
.env.scripts
2025-09-16 10:23:16 -04:00
casjay d5a21b1d57 🗃️ Committing everything that changed 🗃️
rootfs/usr/local/etc/docker/functions/entrypoint.sh
2025-09-16 09:10:39 -04:00
casjay 149188389a 🗃️ Committing everything that changed 🗃️
Jenkinsfile
rootfs/usr/local/bin/entrypoint.sh
rootfs/usr/local/etc/
2025-09-05 13:36:31 -04:00
casjay d827c9238c 🗃️ Committing everything that changed 🗃️
Dockerfile
2025-02-04 10:59:39 -05:00
casjay 07c5000a53 🗃️ Committing everything that changed 🗃️
.gitea/workflows/docker.yaml
2025-02-04 09:29:39 -05:00
casjay d265c74671 ➕ Added: rootfs/usr/local/bin/entrypoint.sh ➕
Added: rootfs/usr/local/bin/entrypoint.sh
2024-08-01 16:10:48 -04:00
casjay f749745fb8 ➕ Added: .gitea/ ➕
Added: .gitea/
2024-08-01 16:10:48 -04:00
casjay 8fa39dd2f8 ➕ Added: Dockerfile ➕
Added: Dockerfile
2024-08-01 16:10:47 -04:00
casjay 2a6850a107 🗃️ Updated domain names 🗃️
bin/entrypoint-podman.sh
Dockerfile
LICENSE.md
rootfs/usr/local/bin/entrypoint.sh
rootfs/usr/local/bin/start-podman.sh
2023-08-10 19:56:31 -04:00
casjay 58434dc4e9 🔵 Added .gitattributes 🔵 2023-07-29 12:37:36 -04:00
casjay c226d783e2 🗃️ Committing everything that changed 🗃️ 2023-01-08 11:20:56 -05:00
casjay 507c0430fc 🗃️ Committing everything that changed 🗃️ 2022-10-16 01:32:10 -04:00
casjay f4c73d7e0b 🗃️ Committing everything that changed 🗃️ 2022-10-14 21:04:36 -04:00
casjay ecb3c55bae 🗃️ Committing everything that changed 🗃️ 2022-10-14 20:57:56 -04:00
casjay 1e1d70cc89 🗃️ Committing everything that changed 🗃️ 2022-10-14 20:36:36 -04:00
casjay d9b6a80c5f 🗃️ Committing everything that changed 🗃️ 2022-10-14 20:34:24 -04:00
casjay 9a0697a0c1 🗃️ Committing everything that changed 🗃️ 2022-10-14 11:53:36 -04:00
casjay 64533ec931 🗃️ Committing everything that changed 🗃️ 2022-10-14 11:11:27 -04:00
casjay 9b9f27bee0 🗃️ Committing everything that changed 🗃️ 2022-10-14 10:56:22 -04:00
casjay d5b034b01c 🗃️ Committing everything that changed 🗃️ 2022-10-14 10:46:46 -04:00
casjay a8ca05d51e 🗃️ Committing everything that changed 🗃️ 2022-10-14 10:45:39 -04:00
casjay f216de79b5 🗃️ Committing everything that changed 🗃️ 2022-10-14 10:13:45 -04:00
casjay 8070b5921c 🗃️ Committing everything that changed 🗃️ 2022-10-14 10:12:57 -04:00
casjay 66da879e54 🗃️ Committing everything that changed 🗃️ 2022-10-13 16:12:59 -04:00
casjay 67543a43ae 🦈🏠🐜❗ Initial Commit ❗🐜🦈🏠 2022-10-13 15:15:10 -04:00