🔧 Apply template updates from /tmp/templates/go 🔧

Sync project with updated upstream template files while preserving all
Go-specific customizations (EXEC_CMD_BIN='', DATA_DIR='', Go env vars,
/data/go symlink, Go-named dirs, etc.).
- .env.scripts: bump version stamp to 202605292219-git
- .gitattributes: update date stamp from template
- .gitea/workflows/docker.yaml: replace bare echo with printf %q for
GITHUB_OUTPUT assignments; use local var assignments for docker org/tag
- .gitignore: expand with editor configs (VSCode/JetBrains/Vim), AI tool
configs (Claude/.cursor/Copilot), env/secrets, build artifacts,
dependency dirs, logs, test/coverage dirs from updated template
- Dockerfile: bump BUILD_DATE to 202605292219; fix PHP_FPM detection from
ls subshell to set -- glob pattern; fix systemd cleanup to use for loop
instead of rm -f $(ls | grep -v ...)
- rootfs/root/docker/setup/00-init.sh through 07-cleanup.sh: update
version/date stamps to 202605292220-git template versions
- rootfs/usr/local/bin/entrypoint.sh: update stamp; fix echo quoting to
use double quotes for CONTAINER_NAME expansion
- rootfs/usr/local/etc/docker/init.d/00-go.sh: apply template improvements:
split SIGPWR trap onto separate line with 2>/dev/null || true; expand
debugger setup to multi-line if/else; use $(<file) instead of cat for
old_pid; apply _script_hash invalidation (W14) before START_SCRIPT
generation; replace heredoc/eval approach with printf %q for safe
quoting; launch START_SCRIPT with bash not eval sh -c (W15); add null
guard on chown in __run_secure_function; use _resolved temp var pattern
for type -P resolution (remove SERVICE_PID_NUMBER); explicit
[ "$1" = "check" ] guard on __check_service; errorCode=${PIPESTATUS[0]};
fix command -v pre check; add grep -- separator; fix ps|awk|grep chain
to pure awk; remove duplicate mkdir block
- rootfs/usr/local/share/template-files/config/env/default.sample:
ENTRYPOINT_PID_FILE path /run/.entrypoint.pid → /run/init.d/entrypoint.pid
- rootfs/usr/local/share/template-files/config/env/examples/zz-entrypoint.sh:
same ENTRYPOINT_PID_FILE path fix

Dockerfile
.env.scripts
.gitattributes
.gitea/workflows/docker.yaml
.gitignore
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/etc/docker/init.d/00-go.sh
rootfs/usr/local/share/template-files/config/env/default.sample
rootfs/usr/local/share/template-files/config/env/examples/zz-entrypoint.sh
This commit is contained in:
2026-05-30 02:19:11 -04:00
parent d25162fc48
commit b646f7a726
17 changed files with 308 additions and 135 deletions
+1 -1
View File
@@ -1,5 +1,5 @@
# - - - - - - - - - - - - - - - - - - - - - - - - - # - - - - - - - - - - - - - - - - - - - - - - - - -
##@Version : 202605041627-git ##@Version : 202605292219-git
# @@Author : CasjaysDev # @@Author : CasjaysDev
# @@Contact : CasjaysDev <docker-admin@casjaysdev.pro> # @@Contact : CasjaysDev <docker-admin@casjaysdev.pro>
# @@License : MIT # @@License : MIT
+1 -1
View File
@@ -1,4 +1,4 @@
# Template generated on Sat Nov 29 11:57:12 AM EST 2025 from https://github.com/alexkaratarakis/gitattributes" # Template generated on Sun May 17 10:58:44 PM EDT 2026 from https://github.com/alexkaratarakis/gitattributes"
# Common settings that generally should always be used with your language specific settings # Common settings that generally should always be used with your language specific settings
# Auto detect text files and perform LF normalization # Auto detect text files and perform LF normalization
* text=auto * text=auto
+14 -7
View File
@@ -19,13 +19,20 @@ jobs:
- name: Get Meta - name: Get Meta
id: meta id: meta
run: | run: |
echo DATE_TAG=$(date +'%y%m') >> $GITHUB_OUTPUT repo_version="$(git describe --tags --always)"
echo REPO_VERSION=$(git describe --tags --always | sed 's/^v//') >> $GITHUB_OUTPUT repo_version="${repo_version#v}"
echo DOCKER_ORG=$(echo ${GITHUB_REPOSITORY} | awk -F"/" '{print $1}') >> $GITHUB_OUTPUT docker_org="${GITHUB_REPOSITORY%%/*}"
echo DOCKER_TAG=$([ -n "$DOCKER_TAG" ] && echo ${DOCKER_TAG} || echo "latest") >> $GITHUB_OUTPUT repo_name="${GITHUB_REPOSITORY#*/}"
echo DOCKER_HUB=$([ -n "$DOCKER_HUB" ] && echo ${DOCKER_HUB} || echo "docker.io") >> $GITHUB_OUTPUT repo_name="${repo_name#docker-}"
echo REPO_NAME=$(echo ${GITHUB_REPOSITORY} | awk -F"/" '{print $2}' | sed 's|^docker-||g') >> $GITHUB_OUTPUT docker_tag="${DOCKER_TAG:-latest}"
echo "$DOCKER_HUB/$DOCKER_ORG/$REPO_NAME:$DOCKER_TAG" docker_hub="${DOCKER_HUB:-docker.io}"
printf 'DATE_TAG=%s\n' "$(date +'%y%m')" >> "$GITHUB_OUTPUT"
printf 'REPO_VERSION=%s\n' "$repo_version" >> "$GITHUB_OUTPUT"
printf 'DOCKER_ORG=%s\n' "$docker_org" >> "$GITHUB_OUTPUT"
printf 'DOCKER_TAG=%s\n' "$docker_tag" >> "$GITHUB_OUTPUT"
printf 'DOCKER_HUB=%s\n' "$docker_hub" >> "$GITHUB_OUTPUT"
printf 'REPO_NAME=%s\n' "$repo_name" >> "$GITHUB_OUTPUT"
printf '%s\n' "$docker_hub/$docker_org/$repo_name:$docker_tag"
- name: Set up Docker BuildX - name: Set up Docker BuildX
uses: docker/setup-buildx-action@v2 uses: docker/setup-buildx-action@v2
+155 -18
View File
@@ -1,4 +1,4 @@
# gitignore created on 04/22/26 at 19:23 # gitignore created on 05/29/26 at 22:20
# Disable reminder in prompt # Disable reminder in prompt
ignoredirmessage ignoredirmessage
@@ -6,10 +6,12 @@ ignoredirmessage
**/.build_failed* **/.build_failed*
# OS generated files # OS generated files
### Linux ### ### Linux ###
# Backup files left by editors
*~ *~
# temporary files which can be created if a process still has a handle open of a deleted file # Temporary files left when a process holds an open handle to a deleted file
.fuse_hidden* .fuse_hidden*
# KDE directory preferences # KDE directory preferences
@@ -18,11 +20,11 @@ ignoredirmessage
# Linux trash folder which might appear on any partition or disk # Linux trash folder which might appear on any partition or disk
.Trash-* .Trash-*
# .nfs files are created when an open file is removed but is still being accessed # NFS stale file handles
.nfs* .nfs*
### macOS ### ### macOS ###
# General .DS_Store
.DS_Store? .DS_Store?
.AppleDouble .AppleDouble
.LSOverride .LSOverride
@@ -46,20 +48,23 @@ Network Trash Folder
Temporary Items Temporary Items
.apdisk .apdisk
### macOS Patch ###
# iCloud generated files # iCloud generated files
*.icloud *.icloud
### Windows ### ### Windows ###
# Windows thumbnail cache files
Thumbs.db Thumbs.db
Thumbs.db:encryptable Thumbs.db:encryptable
ehthumbs.db ehthumbs.db
ehthumbs_vista.db ehthumbs_vista.db
# Dump file # Crash dump files
*.stackdump *.stackdump
# Core dumps (Linux/macOS)
core
core.*
vgcore.*
# Folder config file # Folder config file
[Dd]esktop.ini [Dd]esktop.ini
@@ -73,20 +78,146 @@ $RECYCLE.BIN/
*.msm *.msm
*.msp *.msp
# misc
!*/README*
!inc/main.bash
# Windows shortcuts # Windows shortcuts
*.lnk *.lnk
# ignore commit message ### Editors ###
# Visual Studio Code
.vscode/
!.vscode/extensions.json
# JetBrains IDEs (IntelliJ, GoLand, RustRover, PyCharm, etc.)
.idea/
*.iml
*.iws
*.ipr
# Vim / Neovim
*.swp
*.swo
.netrwhist
Session.vim
.vim/
# Sublime Text
*.sublime-workspace
*.sublime-project
# Eclipse / generic Java IDEs
.project
.classpath
.factorypath
.settings/
### AI tool local configs (personal settings, never commit) ###
# Claude Code
.claude/settings.local.json
.claude/*.lock
# Cursor
.cursor/
.cursorignore
.cursorindexingignore
# GitHub Copilot
.copilot/
# Codeium
.codeium/
# Tabnine
.tabnine/
# Aider
.aider/
.aider.conf.yml
.aider.model.settings.yml
.aiderignore
# General AI assistant local state
.ai/
.ai.local/
### Environment and secrets ###
# Local env overrides — never commit credentials
.env
.env.local
.env.*.local
# Private keys and certificates
*.pem
*.key
*.p12
*.pfx
### Build artifacts ###
build/
dist/
out/
# Rust
target/
# C / C++ / compiled objects
*.o
*.a
*.so
*.dylib
*.dll
*.exe
### Dependency directories ###
# Node
node_modules/
# Go (vendored deps are sometimes committed intentionally, so gitignore only the cache)
# vendor/
# Python
__pycache__/
*.pyc
*.pyo
*.pyd
.Python
*.egg-info/
.eggs/
.venv/
venv/
env/
### Logs ###
*.log
logs/
npm-debug.log*
yarn-debug.log*
yarn-error.log*
### Temporary and cache ###
tmp/
.tmp/
*.tmp
*.cache
.cache/
### Test and coverage ###
coverage/
.coverage
*.cover
*.coverprofile
htmlcov/
.nyc_output/
.pytest_cache/
.tox/
### Misc — always allow ###
!*/README*
!inc/main.bash
### Project-specific patterns ###
# ignore commit message files
**/.gitcommit **/.gitcommit
# ignore .build_failed files # ignore backup files
**/.build_failed*
# ignore .bak files
**/*.bak **/*.bak
# ignore .no_push files # ignore .no_push files
@@ -95,10 +226,16 @@ $RECYCLE.BIN/
# ignore .no_git files # ignore .no_git files
**/.no_git **/.no_git
# ignore .installed files # ignore .installed marker files
**/.installed **/.installed
# ignore work in progress files # ignore work-in-progress rewrite/refactor scripts
**/*.rewrite.sh **/*.rewrite.sh
**/*.refactor.sh **/*.refactor.sh
# ignore local override scripts and configs
**/*.local.sh
**/*.local.conf
**/*.local.yaml
**/*.local.yml
+3 -3
View File
@@ -1,7 +1,7 @@
# Docker image for go using the alpine template # Docker image for go using the alpine template
ARG IMAGE_NAME="go" ARG IMAGE_NAME="go"
ARG PHP_SERVER="go" ARG PHP_SERVER="go"
ARG BUILD_DATE="202604221922" ARG BUILD_DATE="202605292219"
ARG LANGUAGE="en_US.UTF-8" ARG LANGUAGE="en_US.UTF-8"
ARG TIMEZONE="America/New_York" ARG TIMEZONE="America/New_York"
ARG WWW_ROOT_DIR="/usr/local/share/httpd/default" ARG WWW_ROOT_DIR="/usr/local/share/httpd/default"
@@ -123,7 +123,7 @@ RUN echo "Updating system files "; \
echo 'hosts: files dns' >"/etc/nsswitch.conf"; \ echo 'hosts: files dns' >"/etc/nsswitch.conf"; \
[ "$PHP_VERSION" = "system" ] && PHP_VERSION="php" || true; \ [ "$PHP_VERSION" = "system" ] && PHP_VERSION="php" || true; \
PHP_BIN="$(command -v ${PHP_VERSION} 2>/dev/null || true)"; \ PHP_BIN="$(command -v ${PHP_VERSION} 2>/dev/null || true)"; \
PHP_FPM="$(ls /usr/*bin/php*fpm* 2>/dev/null || true)"; \ set -- /usr/*bin/php*fpm*; [ -e "$1" ] && PHP_FPM="$1" || PHP_FPM=""; \
pip_bin="$(command -v python3 2>/dev/null || command -v python2 2>/dev/null || command -v python 2>/dev/null || true)"; \ pip_bin="$(command -v python3 2>/dev/null || command -v python2 2>/dev/null || command -v python 2>/dev/null || true)"; \
py_version="$(command $pip_bin --version | sed 's|[pP]ython ||g' | awk -F '.' '{print $1$2}' | grep '[0-9]' || true)"; \ py_version="$(command $pip_bin --version | sed 's|[pP]ython ||g' | awk -F '.' '{print $1$2}' | grep '[0-9]' || true)"; \
[ "$py_version" -gt "310" ] && pip_opts="--break-system-packages " || pip_opts=""; \ [ "$py_version" -gt "310" ] && pip_opts="--break-system-packages " || pip_opts=""; \
@@ -180,7 +180,7 @@ RUN echo "Deleting unneeded files"; \
rm -rf /lib/systemd/system/sockets.target.wants/*udev* || true; \ rm -rf /lib/systemd/system/sockets.target.wants/*udev* || true; \
rm -rf /lib/systemd/system/sockets.target.wants/*initctl* || true; \ rm -rf /lib/systemd/system/sockets.target.wants/*initctl* || true; \
rm -Rf /usr/share/doc/* /var/tmp/* /var/cache/*/* /root/.cache/* /usr/share/info/* /tmp/* || true; \ rm -Rf /usr/share/doc/* /var/tmp/* /var/cache/*/* /root/.cache/* /usr/share/info/* /tmp/* || true; \
if [ -d "/lib/systemd/system/sysinit.target.wants" ];then cd "/lib/systemd/system/sysinit.target.wants" && rm -f $(ls | grep -v systemd-tmpfiles-setup);fi; \ if [ -d "/lib/systemd/system/sysinit.target.wants" ];then cd "/lib/systemd/system/sysinit.target.wants" && for want_file in *; do [ "$want_file" = "systemd-tmpfiles-setup" ] || rm -f "$want_file"; done; fi; \
if [ -f "/root/docker/setup/07-cleanup.sh" ];then echo "Running the cleanup script";/root/docker/setup/07-cleanup.sh||{ echo "Failed to execute /root/docker/setup/07-cleanup.sh" >&2 && exit 10; };echo "Done running the cleanup script";fi; \ if [ -f "/root/docker/setup/07-cleanup.sh" ];then echo "Running the cleanup script";/root/docker/setup/07-cleanup.sh||{ echo "Failed to execute /root/docker/setup/07-cleanup.sh" >&2 && exit 10; };echo "Done running the cleanup script";fi; \
echo "" echo ""
+2 -2
View File
@@ -1,12 +1,12 @@
#!/usr/bin/env bash #!/usr/bin/env bash
# shellcheck shell=bash # shellcheck shell=bash
# - - - - - - - - - - - - - - - - - - - - - - - - - # - - - - - - - - - - - - - - - - - - - - - - - - -
##@Version : 202605242059-git ##@Version : 202605292220-git
# @@Author : CasjaysDev # @@Author : CasjaysDev
# @@Contact : CasjaysDev <docker-admin@casjaysdev.pro> # @@Contact : CasjaysDev <docker-admin@casjaysdev.pro>
# @@License : MIT # @@License : MIT
# @@Copyright : Copyright 2026 CasjaysDev # @@Copyright : Copyright 2026 CasjaysDev
# @@Created : Sun May 24 08:59:09 PM EDT 2026 # @@Created : Fri May 29 10:20:08 PM EDT 2026
# @@File : 00-init.sh # @@File : 00-init.sh
# @@Description : script to run init # @@Description : script to run init
# @@Changelog : newScript # @@Changelog : newScript
+2 -2
View File
@@ -1,12 +1,12 @@
#!/usr/bin/env bash #!/usr/bin/env bash
# shellcheck shell=bash # shellcheck shell=bash
# - - - - - - - - - - - - - - - - - - - - - - - - - # - - - - - - - - - - - - - - - - - - - - - - - - -
##@Version : 202605242059-git ##@Version : 202605292220-git
# @@Author : CasjaysDev # @@Author : CasjaysDev
# @@Contact : CasjaysDev <docker-admin@casjaysdev.pro> # @@Contact : CasjaysDev <docker-admin@casjaysdev.pro>
# @@License : MIT # @@License : MIT
# @@Copyright : Copyright 2026 CasjaysDev # @@Copyright : Copyright 2026 CasjaysDev
# @@Created : Sun May 24 08:59:09 PM EDT 2026 # @@Created : Fri May 29 10:20:08 PM EDT 2026
# @@File : 01-system.sh # @@File : 01-system.sh
# @@Description : script to run system # @@Description : script to run system
# @@Changelog : newScript # @@Changelog : newScript
+2 -2
View File
@@ -1,12 +1,12 @@
#!/usr/bin/env bash #!/usr/bin/env bash
# shellcheck shell=bash # shellcheck shell=bash
# - - - - - - - - - - - - - - - - - - - - - - - - - # - - - - - - - - - - - - - - - - - - - - - - - - -
##@Version : 202605242139-git ##@Version : 202605292220-git
# @@Author : CasjaysDev # @@Author : CasjaysDev
# @@Contact : CasjaysDev <docker-admin@casjaysdev.pro> # @@Contact : CasjaysDev <docker-admin@casjaysdev.pro>
# @@License : MIT # @@License : MIT
# @@Copyright : Copyright 2026 CasjaysDev # @@Copyright : Copyright 2026 CasjaysDev
# @@Created : Sun May 24 08:59:10 PM EDT 2026 # @@Created : Fri May 29 10:20:09 PM EDT 2026
# @@File : 02-packages.sh # @@File : 02-packages.sh
# @@Description : script to run packages # @@Description : script to run packages
# @@Changelog : newScript # @@Changelog : newScript
+2 -2
View File
@@ -1,12 +1,12 @@
#!/usr/bin/env bash #!/usr/bin/env bash
# shellcheck shell=bash # shellcheck shell=bash
# - - - - - - - - - - - - - - - - - - - - - - - - - # - - - - - - - - - - - - - - - - - - - - - - - - -
##@Version : 202605242059-git ##@Version : 202605292220-git
# @@Author : CasjaysDev # @@Author : CasjaysDev
# @@Contact : CasjaysDev <docker-admin@casjaysdev.pro> # @@Contact : CasjaysDev <docker-admin@casjaysdev.pro>
# @@License : MIT # @@License : MIT
# @@Copyright : Copyright 2026 CasjaysDev # @@Copyright : Copyright 2026 CasjaysDev
# @@Created : Sun May 24 08:59:10 PM EDT 2026 # @@Created : Fri May 29 10:20:09 PM EDT 2026
# @@File : 03-files.sh # @@File : 03-files.sh
# @@Description : script to run files # @@Description : script to run files
# @@Changelog : newScript # @@Changelog : newScript
+2 -2
View File
@@ -1,12 +1,12 @@
#!/usr/bin/env bash #!/usr/bin/env bash
# shellcheck shell=bash # shellcheck shell=bash
# - - - - - - - - - - - - - - - - - - - - - - - - - # - - - - - - - - - - - - - - - - - - - - - - - - -
##@Version : 202605242059-git ##@Version : 202605292220-git
# @@Author : CasjaysDev # @@Author : CasjaysDev
# @@Contact : CasjaysDev <docker-admin@casjaysdev.pro> # @@Contact : CasjaysDev <docker-admin@casjaysdev.pro>
# @@License : MIT # @@License : MIT
# @@Copyright : Copyright 2026 CasjaysDev # @@Copyright : Copyright 2026 CasjaysDev
# @@Created : Sun May 24 08:59:10 PM EDT 2026 # @@Created : Fri May 29 10:20:09 PM EDT 2026
# @@File : 04-users.sh # @@File : 04-users.sh
# @@Description : script to run users # @@Description : script to run users
# @@Changelog : newScript # @@Changelog : newScript
+2 -2
View File
@@ -1,12 +1,12 @@
#!/usr/bin/env bash #!/usr/bin/env bash
# shellcheck shell=bash # shellcheck shell=bash
# - - - - - - - - - - - - - - - - - - - - - - - - - # - - - - - - - - - - - - - - - - - - - - - - - - -
##@Version : 202605242059-git ##@Version : 202605292220-git
# @@Author : CasjaysDev # @@Author : CasjaysDev
# @@Contact : CasjaysDev <docker-admin@casjaysdev.pro> # @@Contact : CasjaysDev <docker-admin@casjaysdev.pro>
# @@License : MIT # @@License : MIT
# @@Copyright : Copyright 2026 CasjaysDev # @@Copyright : Copyright 2026 CasjaysDev
# @@Created : Sun May 24 08:59:10 PM EDT 2026 # @@Created : Fri May 29 10:20:10 PM EDT 2026
# @@File : 05-custom.sh # @@File : 05-custom.sh
# @@Description : script to run custom # @@Description : script to run custom
# @@Changelog : newScript # @@Changelog : newScript
+2 -2
View File
@@ -1,12 +1,12 @@
#!/usr/bin/env bash #!/usr/bin/env bash
# shellcheck shell=bash # shellcheck shell=bash
# - - - - - - - - - - - - - - - - - - - - - - - - - # - - - - - - - - - - - - - - - - - - - - - - - - -
##@Version : 202605242059-git ##@Version : 202605292220-git
# @@Author : CasjaysDev # @@Author : CasjaysDev
# @@Contact : CasjaysDev <docker-admin@casjaysdev.pro> # @@Contact : CasjaysDev <docker-admin@casjaysdev.pro>
# @@License : MIT # @@License : MIT
# @@Copyright : Copyright 2026 CasjaysDev # @@Copyright : Copyright 2026 CasjaysDev
# @@Created : Sun May 24 08:59:10 PM EDT 2026 # @@Created : Fri May 29 10:20:11 PM EDT 2026
# @@File : 06-post.sh # @@File : 06-post.sh
# @@Description : script to run post # @@Description : script to run post
# @@Changelog : newScript # @@Changelog : newScript
+2 -2
View File
@@ -1,12 +1,12 @@
#!/usr/bin/env bash #!/usr/bin/env bash
# shellcheck shell=bash # shellcheck shell=bash
# - - - - - - - - - - - - - - - - - - - - - - - - - # - - - - - - - - - - - - - - - - - - - - - - - - -
##@Version : 202605242059-git ##@Version : 202605292220-git
# @@Author : CasjaysDev # @@Author : CasjaysDev
# @@Contact : CasjaysDev <docker-admin@casjaysdev.pro> # @@Contact : CasjaysDev <docker-admin@casjaysdev.pro>
# @@License : MIT # @@License : MIT
# @@Copyright : Copyright 2026 CasjaysDev # @@Copyright : Copyright 2026 CasjaysDev
# @@Created : Sun May 24 08:59:10 PM EDT 2026 # @@Created : Fri May 29 10:20:11 PM EDT 2026
# @@File : 07-cleanup.sh # @@File : 07-cleanup.sh
# @@Description : script to run cleanup # @@Description : script to run cleanup
# @@Changelog : newScript # @@Changelog : newScript
+3 -3
View File
@@ -1,13 +1,13 @@
#!/usr/bin/env bash #!/usr/bin/env bash
# shellcheck shell=bash # shellcheck shell=bash
# - - - - - - - - - - - - - - - - - - - - - - - - - # - - - - - - - - - - - - - - - - - - - - - - - - -
##@Version : 202605241245-git ##@Version : 202605260122-git
# @@Author : Jason Hempstead # @@Author : Jason Hempstead
# @@Contact : jason@casjaysdev.pro # @@Contact : jason@casjaysdev.pro
# @@License : WTFPL # @@License : WTFPL
# @@ReadME : entrypoint.sh --help # @@ReadME : entrypoint.sh --help
# @@Copyright : Copyright: (c) 2026 Jason Hempstead, Casjays Developments # @@Copyright : Copyright: (c) 2026 Jason Hempstead, Casjays Developments
# @@Created : Sunday, May 24, 2026 20:59 EDT # @@Created : Friday, May 29, 2026 22:19 EDT
# @@File : entrypoint.sh # @@File : entrypoint.sh
# @@Description : Entrypoint file for alpine # @@Description : Entrypoint file for alpine
# @@Changelog : New script # @@Changelog : New script
@@ -61,7 +61,7 @@ case "$1" in
# Help message # Help message
-h | --help) -h | --help)
shift 1 shift 1
echo 'Docker container for '$CONTAINER_NAME'' echo "Docker container for $CONTAINER_NAME"
echo "Usage: $CONTAINER_NAME [help tail cron exec start init shell procs ports healthcheck backup command]" echo "Usage: $CONTAINER_NAME [help tail cron exec start init shell procs ports healthcheck backup command]"
echo "" echo ""
exit 0 exit 0
+113 -84
View File
@@ -1,13 +1,13 @@
#!/usr/bin/env bash #!/usr/bin/env bash
# shellcheck shell=bash # shellcheck shell=bash
# - - - - - - - - - - - - - - - - - - - - - - - - - # - - - - - - - - - - - - - - - - - - - - - - - - -
##@Version : 202602061352-git ##@Version : 202605260122-git
# @@Author : Jason Hempstead # @@Author : Jason Hempstead
# @@Contact : jason@casjaysdev.pro # @@Contact : jason@casjaysdev.pro
# @@License : WTFPL # @@License : WTFPL
# @@ReadME : 00-go.sh --help # @@ReadME : 00-go.sh --help
# @@Copyright : Copyright: (c) 2026 Jason Hempstead, Casjays Developments # @@Copyright : Copyright: (c) 2026 Jason Hempstead, Casjays Developments
# @@Created : Wednesday, Apr 22, 2026 19:24 EDT # @@Created : Friday, May 29, 2026 22:22 EDT
# @@File : 00-go.sh # @@File : 00-go.sh
# @@Description : # @@Description :
# @@Changelog : New script # @@Changelog : New script
@@ -24,7 +24,8 @@ set -e
# - - - - - - - - - - - - - - - - - - - - - - - - - # - - - - - - - - - - - - - - - - - - - - - - - - -
# run trap command on exit # run trap command on exit
trap '__trap_err_handler' ERR trap '__trap_err_handler' ERR
trap 'retVal=$?;if [ "$SERVICE_IS_RUNNING" != "yes" ] && [ -f "$SERVICE_PID_FILE" ]; then rm -Rf "$SERVICE_PID_FILE"; fi;exit $retVal' SIGINT SIGTERM SIGPWR trap 'retVal=$?;if [ "$SERVICE_IS_RUNNING" != "yes" ] && [ -f "$SERVICE_PID_FILE" ]; then rm -Rf "$SERVICE_PID_FILE"; fi;exit $retVal' SIGINT SIGTERM
trap 'retVal=$?;if [ "$SERVICE_IS_RUNNING" != "yes" ] && [ -f "$SERVICE_PID_FILE" ]; then rm -Rf "$SERVICE_PID_FILE"; fi;exit $retVal' SIGPWR 2>/dev/null || true
# - - - - - - - - - - - - - - - - - - - - - - - - - # - - - - - - - - - - - - - - - - - - - - - - - - -
# ERR trap handler - smart about critical vs non-critical errors # ERR trap handler - smart about critical vs non-critical errors
__trap_err_handler() { __trap_err_handler() {
@@ -74,7 +75,14 @@ fi
# - - - - - - - - - - - - - - - - - - - - - - - - - # - - - - - - - - - - - - - - - - - - - - - - - - -
# setup debugging - https://www.gnu.org/software/bash/manual/html_node/The-Set-Builtin.html # setup debugging - https://www.gnu.org/software/bash/manual/html_node/The-Set-Builtin.html
[ -f "/config/.debug" ] && [ -z "$DEBUGGER_OPTIONS" ] && export DEBUGGER_OPTIONS="$(<"/config/.debug")" || DEBUGGER_OPTIONS="${DEBUGGER_OPTIONS:-}" [ -f "/config/.debug" ] && [ -z "$DEBUGGER_OPTIONS" ] && export DEBUGGER_OPTIONS="$(<"/config/.debug")" || DEBUGGER_OPTIONS="${DEBUGGER_OPTIONS:-}"
{ [ "$DEBUGGER" = "on" ] || [ -f "/config/.debug" ]; } && echo "Enabling debugging" && set -xo pipefail -x$DEBUGGER_OPTIONS && export DEBUGGER="on" || set -o pipefail if [ "$DEBUGGER" = "on" ] || [ -f "/config/.debug" ]; then
echo "Enabling debugging"
set -o pipefail
[ -n "$DEBUGGER_OPTIONS" ] && set -"$DEBUGGER_OPTIONS"
export DEBUGGER="on"
else
set -o pipefail
fi
# - - - - - - - - - - - - - - - - - - - - - - - - - # - - - - - - - - - - - - - - - - - - - - - - - - -
export PATH="/go/bin:/usr/local/etc/docker/bin:/usr/local/bin:/usr/bin:/usr/sbin:/bin:/sbin" export PATH="/go/bin:/usr/local/etc/docker/bin:/usr/local/bin:/usr/bin:/usr/sbin:/bin:/sbin"
# - - - - - - - - - - - - - - - - - - - - - - - - - # - - - - - - - - - - - - - - - - - - - - - - - - -
@@ -98,7 +106,7 @@ if [ ! -f "/run/.start_init_scripts.pid" ]; then
fi fi
# Clean up any stale PID file for this service on startup # Clean up any stale PID file for this service on startup
if [ -n "$SERVICE_NAME" ] && [ -f "/run/init.d/$SERVICE_NAME.pid" ]; then if [ -n "$SERVICE_NAME" ] && [ -f "/run/init.d/$SERVICE_NAME.pid" ]; then
old_pid=$(cat "/run/init.d/$SERVICE_NAME.pid" 2>/dev/null) old_pid=$(<"/run/init.d/$SERVICE_NAME.pid") 2>/dev/null
if [ -n "$old_pid" ] && ! kill -0 "$old_pid" 2>/dev/null; then if [ -n "$old_pid" ] && ! kill -0 "$old_pid" 2>/dev/null; then
echo "🧹 Removing stale PID file for $SERVICE_NAME" echo "🧹 Removing stale PID file for $SERVICE_NAME"
rm -f "/run/init.d/$SERVICE_NAME.pid" rm -f "/run/init.d/$SERVICE_NAME.pid"
@@ -276,7 +284,7 @@ __run_precopy() {
# Define actions/commands # Define actions/commands
# allow custom functions # allow custom functions
if builtin type -t __run_precopy_local | grep -q 'function'; then if builtin type -t __run_precopy_local | grep -q -- 'function'; then
__run_precopy_local __run_precopy_local
fi fi
} }
@@ -288,7 +296,7 @@ __execute_prerun() {
# Define actions/commands # Define actions/commands
# allow custom functions # allow custom functions
if builtin type -t __execute_prerun_local | grep -q 'function'; then if builtin type -t __execute_prerun_local | grep -q -- 'function'; then
__execute_prerun_local __execute_prerun_local
fi fi
} }
@@ -318,7 +326,7 @@ __run_pre_execute_checks() {
__script_exit 1 __script_exit 1
fi fi
# allow custom functions # allow custom functions
if builtin type -t __run_pre_execute_checks_local | grep -q 'function'; then if builtin type -t __run_pre_execute_checks_local | grep -q -- 'function'; then
__run_pre_execute_checks_local __run_pre_execute_checks_local
fi fi
# exit function # exit function
@@ -348,7 +356,7 @@ __update_conf_files() {
# define actions # define actions
# allow custom functions # allow custom functions
if builtin type -t __update_conf_files_local | grep -q 'function'; then if builtin type -t __update_conf_files_local | grep -q -- 'function'; then
__update_conf_files_local __update_conf_files_local
fi fi
# exit function # exit function
@@ -372,7 +380,7 @@ __pre_execute() {
# Lets wait a few seconds before continuing # Lets wait a few seconds before continuing
sleep 2 sleep 2
# allow custom functions # allow custom functions
if builtin type -t __pre_execute_local | grep -q 'function'; then if builtin type -t __pre_execute_local | grep -q -- 'function'; then
__pre_execute_local __pre_execute_local
fi fi
# exit function # exit function
@@ -405,13 +413,13 @@ __post_execute() {
__banner "$postMessageEnd: Status $retVal" __banner "$postMessageEnd: Status $retVal"
) 2>"/dev/stderr" | tee -p -a "/data/logs/init.txt" & ) 2>"/dev/stderr" | tee -p -a "/data/logs/init.txt" &
pid=$! pid=$!
if ps ax | awk '{print $1}' | grep -v grep | grep -q "$execPid$"; then if ps ax | awk -v pid="$execPid" '$1 == pid {found=1} END {exit !found}'; then
retVal=0 retVal=0
else else
retVal=10 retVal=10
fi fi
# allow custom functions # allow custom functions
if builtin type -t __post_execute_local | grep -q 'function'; then if builtin type -t __post_execute_local | grep -q -- 'function'; then
__post_execute_local __post_execute_local
fi fi
# exit function # exit function
@@ -427,7 +435,7 @@ __pre_message() {
# execute commands # execute commands
# allow custom functions # allow custom functions
if builtin type -t __pre_message_local | grep -q 'function'; then if builtin type -t __pre_message_local | grep -q -- 'function'; then
__pre_message_local __pre_message_local
fi fi
# exit function # exit function
@@ -441,7 +449,7 @@ __update_ssl_conf() {
# execute commands # execute commands
# allow custom functions # allow custom functions
if builtin type -t __update_ssl_conf_local | grep -q 'function'; then if builtin type -t __update_ssl_conf_local | grep -q -- 'function'; then
__update_ssl_conf_local __update_ssl_conf_local
fi fi
# set exitCode # set exitCode
@@ -553,7 +561,7 @@ __run_start_script() {
SERVICE_PORT="" SERVICE_PORT=""
fi fi
fi fi
if [ -n "$pre" ] && [ -n "$(command -v "$pre" 2>/dev/null)" ]; then if [ -n "$pre" ] && command -v "$pre" &>/dev/null; then
export cmd_exec="$pre $cmd $args" export cmd_exec="$pre $cmd $args"
message="Starting service: $name $args through $pre" message="Starting service: $name $args through $pre"
else else
@@ -565,58 +573,88 @@ __run_start_script() {
fi fi
__log_info "$message" | tee -a -p "/data/logs/init.txt" __log_info "$message" | tee -a -p "/data/logs/init.txt"
su_cmd touch "$SERVICE_PID_FILE" su_cmd touch "$SERVICE_PID_FILE"
# W14: invalidate cached START_SCRIPT if key variables changed
local _script_hash_src="$cmd $args $SERVICE_USER $RESET_ENV $su_exec"
local _script_hash
_script_hash=$(printf '%s' "$_script_hash_src" | md5sum 2>/dev/null | cut -c1-8 || true)
if [ -f "${START_SCRIPT}.hash" ] && [ -f "$START_SCRIPT" ]; then
if [ "$(cat "${START_SCRIPT}.hash" 2>/dev/null)" != "$_script_hash" ]; then
rm -f "$START_SCRIPT" "${START_SCRIPT}.hash"
fi
fi
if [ "$RESET_ENV" = "yes" ]; then if [ "$RESET_ENV" = "yes" ]; then
env_command="$(echo "env -i HOME=\"$home\" LC_CTYPE=\"$lc_type\" PATH=\"$path\" HOSTNAME=\"$sysname\" USER=\"${SERVICE_USER:-$RUNAS_USER}\" $extra_env")" # RESET_ENV=yes intentionally strips all inherited vars; only explicit vars are passed
execute_command="$(__trim "$su_exec $env_command $cmd_exec")"
if [ ! -f "$START_SCRIPT" ]; then if [ ! -f "$START_SCRIPT" ]; then
cat <<EOF >"$START_SCRIPT" # Use printf %q to safely quote each env component for embedding in the script
#!/usr/bin/env bash local _q_home _q_lc _q_path _q_sysname _q_svcuser _q_su _q_cmd _q_args _q_extra
trap 'exitCode=\$?;[ \$exitCode -ne 0 ] && [ -f "\$SERVICE_PID_FILE" ] && rm -Rf "\$SERVICE_PID_FILE";exit \$exitCode' EXIT _q_home=$(printf '%q' "$home")
# _q_lc=$(printf '%q' "$lc_type")
set -Eeo pipefail _q_path=$(printf '%q' "$path")
# Setting up $cmd to run as ${SERVICE_USER:-root} with env _q_sysname=$(printf '%q' "$sysname")
retVal=10 _q_svcuser=$(printf '%q' "${SERVICE_USER:-$RUNAS_USER}")
cmd="$cmd" _q_su=''
args="$args" [ -n "$su_exec" ] && _q_su=$(printf '%q ' $su_exec)
SERVICE_NAME="$SERVICE_NAME" _q_cmd=$(printf '%q' "$cmd")
SERVICE_PID_FILE="$SERVICE_PID_FILE" _q_args=''
LOG_DIR="$LOG_DIR" [ -n "$args" ] && _q_args=$(printf '%q ' $args)
execute_command="$execute_command" _q_extra=''
\$execute_command 2>"/dev/stderr" >>"\$LOG_DIR/\$SERVICE_NAME.log" & [ -n "$extra_env" ] && _q_extra=$(printf '%q ' $extra_env)
execPid=\$! {
sleep 1 printf '#!/usr/bin/env bash\n'
checkPID="\$(ps ax | awk '{print \$1}' | grep -v grep | grep "\$execPid$" || false)" printf "trap 'exitCode=\$?;[ \$exitCode -ne 0 ] && [ -f \"\$SERVICE_PID_FILE\" ] && rm -Rf \"\$SERVICE_PID_FILE\";exit \$exitCode' EXIT\n"
[ -n "\$execPid" ] && [ -n "\$checkPID" ] && echo "\$execPid" >"\$SERVICE_PID_FILE" && retVal=0 || retVal=10 printf 'set -Eeo pipefail\n'
[ "\$retVal" = 0 ] && printf '%s\n' "\$SERVICE_NAME: \$execPid" >"/run/healthcheck/\$SERVICE_NAME" || echo "Failed to start $execute_command" >&2 printf '# Setting up %s to run as %s with env\n' "$cmd" "${SERVICE_USER:-root}"
exit \$retVal printf 'retVal=10\n'
printf 'SERVICE_NAME=%q\n' "$SERVICE_NAME"
EOF printf 'SERVICE_PID_FILE=%q\n' "$SERVICE_PID_FILE"
printf 'LOG_DIR=%q\n' "$LOG_DIR"
printf '%s env -i HOME=%s LC_CTYPE=%s PATH=%s HOSTNAME=%s USER=%s %s %s %s 2>>"/dev/stderr" >>"$LOG_DIR/$SERVICE_NAME.log" &\n' \
"$_q_su" "$_q_home" "$_q_lc" "$_q_path" "$_q_sysname" "$_q_svcuser" "$_q_extra" "$_q_cmd" "$_q_args"
printf 'execPid=$!\n'
printf 'sleep 1\n'
printf 'if [ -n "$execPid" ] && kill -0 "$execPid" 2>/dev/null; then\n'
printf ' echo "$execPid" >"$SERVICE_PID_FILE"\n'
printf ' retVal=0\n'
printf ' printf '"'"'%%s\n'"'"' "$SERVICE_NAME: $execPid" >"/run/healthcheck/$SERVICE_NAME"\n'
printf 'else\n'
printf ' retVal=10\n'
printf ' echo "Failed to start service %s" >&2\n' "$cmd"
printf 'fi\n'
printf 'exit $retVal\n'
} >"$START_SCRIPT"
printf '%s' "$_script_hash" >"${START_SCRIPT}.hash"
fi fi
else else
if [ ! -f "$START_SCRIPT" ]; then if [ ! -f "$START_SCRIPT" ]; then
execute_command="$(__trim "$su_exec $cmd_exec")" local _q_su _q_cmd _q_args
cat <<EOF >"$START_SCRIPT" _q_su=''
#!/usr/bin/env bash [ -n "$su_exec" ] && _q_su=$(printf '%q ' $su_exec)
trap 'exitCode=\$?;[ \$exitCode -ne 0 ] && [ -f "\$SERVICE_PID_FILE" ] && rm -Rf "\$SERVICE_PID_FILE";exit \$exitCode' EXIT _q_cmd=$(printf '%q' "$cmd")
# _q_args=''
set -Eeo pipefail [ -n "$args" ] && _q_args=$(printf '%q ' $args)
# Setting up $cmd to run as ${SERVICE_USER:-root} {
retVal=10 printf '#!/usr/bin/env bash\n'
cmd="$cmd" printf "trap 'exitCode=\$?;[ \$exitCode -ne 0 ] && [ -f \"\$SERVICE_PID_FILE\" ] && rm -Rf \"\$SERVICE_PID_FILE\";exit \$exitCode' EXIT\n"
args="$args" printf 'set -Eeo pipefail\n'
SERVICE_NAME="$SERVICE_NAME" printf '# Setting up %s to run as %s\n' "$cmd" "${SERVICE_USER:-root}"
SERVICE_PID_FILE="$SERVICE_PID_FILE" printf 'retVal=10\n'
LOG_DIR="$LOG_DIR" printf 'SERVICE_NAME=%q\n' "$SERVICE_NAME"
execute_command="$execute_command" printf 'SERVICE_PID_FILE=%q\n' "$SERVICE_PID_FILE"
\$execute_command 2>>"/dev/stderr" >>"\$LOG_DIR/\$SERVICE_NAME.log" & printf 'LOG_DIR=%q\n' "$LOG_DIR"
execPid=\$! printf '%s %s %s 2>>"/dev/stderr" >>"$LOG_DIR/$SERVICE_NAME.log" &\n' \
sleep 1 "$_q_su" "$_q_cmd" "$_q_args"
checkPID="\$(ps ax | awk '{print \$1}' | grep -v grep | grep "\$execPid$" || false)" printf 'execPid=$!\n'
[ -n "\$execPid" ] && [ -n "\$checkPID" ] && echo "\$execPid" >"\$SERVICE_PID_FILE" && retVal=0 || retVal=10 printf 'sleep 1\n'
[ "\$retVal" = 0 ] || echo "Failed to start $execute_command" >&2 printf 'if [ -n "$execPid" ] && kill -0 "$execPid" 2>/dev/null; then\n'
exit \$retVal printf ' echo "$execPid" >"$SERVICE_PID_FILE"\n'
printf ' retVal=0\n'
EOF printf 'else\n'
printf ' retVal=10\n'
printf ' echo "Failed to start service %s" >&2\n' "$cmd"
printf 'fi\n'
printf 'exit $retVal\n'
} >"$START_SCRIPT"
printf '%s' "$_script_hash" >"${START_SCRIPT}.hash"
fi fi
fi fi
fi fi
@@ -624,7 +662,8 @@ EOF
chmod 755 -Rf "$START_SCRIPT" chmod 755 -Rf "$START_SCRIPT"
fi fi
if [ "$CONTAINER_INIT" != "yes" ]; then if [ "$CONTAINER_INIT" != "yes" ]; then
eval sh -c "$START_SCRIPT" # W15: launch as bash, not sh, since the generated script uses bash-specific features
bash "$START_SCRIPT"
runExitCode=$? runExitCode=$?
fi fi
fi fi
@@ -638,7 +677,7 @@ __run_secure_function() {
for filesperms in "${USER_FILE_PREFIX}"/*; do for filesperms in "${USER_FILE_PREFIX}"/*; do
if [ -e "$filesperms" ]; then if [ -e "$filesperms" ]; then
chmod -Rf 600 "$filesperms" chmod -Rf 600 "$filesperms"
chown -Rf $SERVICE_USER:$SERVICE_USER "$filesperms" 2>/dev/null [ -n "$SERVICE_USER" ] && chown -Rf "$SERVICE_USER:$SERVICE_USER" "$filesperms" 2>/dev/null
fi fi
done 2>/dev/null | tee -p -a "/data/logs/init.txt" done 2>/dev/null | tee -p -a "/data/logs/init.txt"
fi fi
@@ -646,7 +685,7 @@ __run_secure_function() {
for filesperms in "${ROOT_FILE_PREFIX}"/*; do for filesperms in "${ROOT_FILE_PREFIX}"/*; do
if [ -e "$filesperms" ]; then if [ -e "$filesperms" ]; then
chmod -Rf 600 "$filesperms" chmod -Rf 600 "$filesperms"
chown -Rf $SERVICE_USER:$SERVICE_USER "$filesperms" 2>/dev/null [ -n "$SERVICE_USER" ] && chown -Rf "$SERVICE_USER:$SERVICE_USER" "$filesperms" 2>/dev/null
fi fi
done 2>/dev/null | tee -p -a "/data/logs/init.txt" done 2>/dev/null | tee -p -a "/data/logs/init.txt"
fi fi
@@ -666,18 +705,16 @@ SERVICE_EXIT_CODE=0
# application specific # application specific
EXEC_CMD_NAME="${EXEC_CMD_BIN##*/}" EXEC_CMD_NAME="${EXEC_CMD_BIN##*/}"
SERVICE_PID_FILE="/run/init.d/$EXEC_CMD_NAME.pid" SERVICE_PID_FILE="/run/init.d/$EXEC_CMD_NAME.pid"
SERVICE_PID_NUMBER="$(__pgrep "$EXEC_CMD_NAME" 2>/dev/null || echo '')" _resolved="$(type -P "$EXEC_CMD_BIN" 2>/dev/null)"
if type -P "$EXEC_CMD_BIN" &>/dev/null; then [ -n "$_resolved" ] && EXEC_CMD_BIN="$_resolved"
EXEC_CMD_BIN="$(type -P "$EXEC_CMD_BIN")" _resolved="$(type -P "$EXEC_PRE_SCRIPT" 2>/dev/null)"
fi [ -n "$_resolved" ] && EXEC_PRE_SCRIPT="$_resolved"
if type -P "$EXEC_PRE_SCRIPT" &>/dev/null; then unset _resolved
EXEC_PRE_SCRIPT="$(type -P "$EXEC_PRE_SCRIPT")"
fi
# - - - - - - - - - - - - - - - - - - - - - - - - - # - - - - - - - - - - - - - - - - - - - - - - - - -
# Only run check # Only run check when explicitly requested
if __check_service "$1"; then if [ "$1" = "check" ] && __check_service "$1"; then
SERVICE_IS_RUNNING=yes SERVICE_IS_RUNNING=yes
else elif [ "$1" = "check" ]; then
SERVICE_IS_RUNNING="no" SERVICE_IS_RUNNING="no"
fi fi
# - - - - - - - - - - - - - - - - - - - - - - - - - # - - - - - - - - - - - - - - - - - - - - - - - - -
@@ -841,14 +878,6 @@ if [ -n "$root_user_pass" ]; then
echo "$root_user_pass" >"${ROOT_FILE_PREFIX}/${SERVICE_NAME}_pass" echo "$root_user_pass" >"${ROOT_FILE_PREFIX}/${SERVICE_NAME}_pass"
fi fi
# - - - - - - - - - - - - - - - - - - - - - - - - - # - - - - - - - - - - - - - - - - - - - - - - - - -
# create needed dirs
if [ ! -d "$LOG_DIR" ]; then
mkdir -p "$LOG_DIR"
fi
if [ ! -d "$RUN_DIR" ]; then
mkdir -p "$RUN_DIR"
fi
# - - - - - - - - - - - - - - - - - - - - - - - - -
# Allow per init script usernames and passwords # Allow per init script usernames and passwords
if __file_exists_with_content "${USER_FILE_PREFIX}/${SERVICE_NAME}_name"; then if __file_exists_with_content "${USER_FILE_PREFIX}/${SERVICE_NAME}_name"; then
user_name="$(<"${USER_FILE_PREFIX}/${SERVICE_NAME}_name")" user_name="$(<"${USER_FILE_PREFIX}/${SERVICE_NAME}_name")"
@@ -934,7 +963,7 @@ __fix_permissions "$SERVICE_USER" "$SERVICE_GROUP"
__run_pre_execute_checks 2>/dev/stderr | tee -a -p "/data/logs/entrypoint.log" "/data/logs/init.txt" || return 20 __run_pre_execute_checks 2>/dev/stderr | tee -a -p "/data/logs/entrypoint.log" "/data/logs/init.txt" || return 20
# - - - - - - - - - - - - - - - - - - - - - - - - - # - - - - - - - - - - - - - - - - - - - - - - - - -
__run_start_script 2>>/dev/stderr | tee -p -a "/data/logs/entrypoint.log" __run_start_script 2>>/dev/stderr | tee -p -a "/data/logs/entrypoint.log"
errorCode=$? errorCode=${PIPESTATUS[0]}
if [ -n "$EXEC_CMD_BIN" ]; then if [ -n "$EXEC_CMD_BIN" ]; then
if [ "$errorCode" -eq 0 ]; then if [ "$errorCode" -eq 0 ]; then
SERVICE_EXIT_CODE=0 SERVICE_EXIT_CODE=0
@@ -116,7 +116,7 @@ DATABASE_DIR_SUPABASE="${DATABASE_DIR_SUPABASE:-$DATABASE_BASE_DIR/supabase}"
DOCKER_HOST="unix://var/run/docker.sock" DOCKER_HOST="unix://var/run/docker.sock"
# - - - - - - - - - - - - - - - - - - - - - - - - - # - - - - - - - - - - - - - - - - - - - - - - - - -
# File locations # File locations
ENTRYPOINT_PID_FILE="${ENTRYPOINT_PID_FILE:-/run/.entrypoint.pid}" ENTRYPOINT_PID_FILE="${ENTRYPOINT_PID_FILE:-/run/init.d/entrypoint.pid}"
ENTRYPOINT_INIT_FILE="${ENTRYPOINT_INIT_FILE:-/config/.entrypoint.done}" ENTRYPOINT_INIT_FILE="${ENTRYPOINT_INIT_FILE:-/config/.entrypoint.done}"
ENTRYPOINT_DATA_INIT_FILE="${ENTRYPOINT_DATA_INIT_FILE:-/data/.docker_has_run}" ENTRYPOINT_DATA_INIT_FILE="${ENTRYPOINT_DATA_INIT_FILE:-/data/.docker_has_run}"
ENTRYPOINT_CONFIG_INIT_FILE="${ENTRYPOINT_CONFIG_INIT_FILE:-/config/.docker_has_run}" ENTRYPOINT_CONFIG_INIT_FILE="${ENTRYPOINT_CONFIG_INIT_FILE:-/config/.docker_has_run}"
@@ -1,6 +1,6 @@
# - - - - - - - - - - - - - - - - - - - - - - - - - # - - - - - - - - - - - - - - - - - - - - - - - - -
# File locations # File locations
ENTRYPOINT_PID_FILE="${ENTRYPOINT_PID_FILE:-/run/.entrypoint.pid}" ENTRYPOINT_PID_FILE="${ENTRYPOINT_PID_FILE:-/run/init.d/entrypoint.pid}"
ENTRYPOINT_INIT_FILE="${ENTRYPOINT_INIT_FILE:-/config/.entrypoint.done}" ENTRYPOINT_INIT_FILE="${ENTRYPOINT_INIT_FILE:-/config/.entrypoint.done}"
ENTRYPOINT_DATA_INIT_FILE="${ENTRYPOINT_DATA_INIT_FILE:-/data/.docker_has_run}" ENTRYPOINT_DATA_INIT_FILE="${ENTRYPOINT_DATA_INIT_FILE:-/data/.docker_has_run}"
ENTRYPOINT_CONFIG_INIT_FILE="${ENTRYPOINT_CONFIG_INIT_FILE:-/config/.docker_has_run}" ENTRYPOINT_CONFIG_INIT_FILE="${ENTRYPOINT_CONFIG_INIT_FILE:-/config/.docker_has_run}"