fix(entrypoint): exec memcached so docker stop is graceful

entrypoint.sh ran memcached in the foreground under bash. bash as PID 1 has no
SIGTERM handler, so the kernel dropped docker stop's SIGTERM; docker waited the
full 10s timeout and SIGKILLed the container (exit 137). exec memcached so it
becomes PID 1; it installs its own SIGTERM/SIGINT handlers and exits at once.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
shadowdaoandClaude Opus 5.5 committed 2026-10-20 15:44:14 -07:00
1 parent 434883782b
commit 597114e2f3
1 file changed
+5 -3
+5 -3
View File
@@ -1,6 +1,8 @@
#!/bin/bash
echo "Starting Memcached..."
sleep 5
/usr/bin/memcached -u memcached -l 0.0.0.0
exit 0
# exec so memcached replaces bash as PID 1. bash as PID 1 has no SIGTERM
# handler, so the kernel dropped `docker stop`'s SIGTERM and docker SIGKILLed
# the container after the full 10s timeout (exit 137). memcached installs its
# own SIGTERM/SIGINT handlers, so as PID 1 it shuts down immediately.
exec /usr/bin/memcached -u memcached -l 0.0.0.0