mirror of
https://gitlab.com/buildroot.org/buildroot.git
synced 2026-08-08 08:30:47 -09:00
package/docker-engine: rewrite dockerd init script
This brings the dockerd init script in line with the standard Buildroot init script pattern. Reload using SIGHUP is also supported now, note that the Docker documentation cautions that not all parameters can be changed at runtime (without a full restart). Signed-off-by: Fiona Klute (WIWA) <fiona.klute@gmx.de> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
This commit is contained in:
committed by
Thomas Petazzoni
parent
fcfdfb276d
commit
ef5947774f
@@ -439,7 +439,6 @@ package/dmalloc/0004-Makefile-use-the-configure-detected-or-user-supplied.patch
|
||||
package/dmalloc/0005-configure-use-LD-instead-of-hard-coding-ld.patch lib_patch.Upstream
|
||||
package/dmraid/0001-fix-compilation-under-musl.patch lib_patch.Upstream
|
||||
package/dmraid/S20dmraid lib_sysv.Variables
|
||||
package/docker-engine/S60dockerd Shellcheck lib_sysv.Indent lib_sysv.Variables
|
||||
package/docopt-cpp/0001-only-build-one-target-use-BUILD_SHARED_LIBS-where-appropriate.patch lib_patch.Upstream
|
||||
package/domoticz/S99domoticz Shellcheck
|
||||
package/dovecot/0001-auth-Fix-handling-passdbs-with-identical-driver-args.patch lib_patch.Upstream
|
||||
|
||||
@@ -1,38 +1,68 @@
|
||||
#!/bin/sh
|
||||
|
||||
NAME=dockerd
|
||||
DAEMON=/usr/bin/$NAME
|
||||
PIDFILE=/var/run/$NAME.pid
|
||||
DAEMON_ARGS=""
|
||||
DAEMON="dockerd"
|
||||
PIDFILE="/var/run/$DAEMON.pid"
|
||||
|
||||
[ -r /etc/default/$NAME ] && . /etc/default/$NAME $1
|
||||
DOCKERD_ARGS=""
|
||||
|
||||
do_start() {
|
||||
echo -n "Starting $NAME: "
|
||||
start-stop-daemon --start --quiet --background --make-pidfile \
|
||||
--pidfile $PIDFILE --exec $DAEMON -- $DAEMON_ARGS \
|
||||
&& echo "OK" || echo "FAIL"
|
||||
# shellcheck source=/dev/null
|
||||
[ -r "/etc/default/$DAEMON" ] && . "/etc/default/$DAEMON"
|
||||
|
||||
start() {
|
||||
printf 'Starting %s: ' "$DAEMON"
|
||||
# shellcheck disable=SC2086 # we need word splitting for DOCKERD_ARGS
|
||||
start-stop-daemon --start --background --pidfile "$PIDFILE" \
|
||||
--exec "/usr/bin/$DAEMON" \
|
||||
-- --pidfile "$PIDFILE" $DOCKERD_ARGS
|
||||
status=$?
|
||||
if [ "$status" -eq 0 ]; then
|
||||
echo "OK"
|
||||
else
|
||||
echo "FAIL"
|
||||
fi
|
||||
return "$status"
|
||||
}
|
||||
|
||||
do_stop() {
|
||||
echo -n "Stopping $NAME: "
|
||||
start-stop-daemon --stop --quiet --pidfile $PIDFILE \
|
||||
&& echo "OK" || echo "FAIL"
|
||||
stop() {
|
||||
printf 'Stopping %s: ' "$DAEMON"
|
||||
start-stop-daemon --stop --pidfile "$PIDFILE" --exec "/usr/bin/$DAEMON"
|
||||
status=$?
|
||||
if [ "$status" -eq 0 ]; then
|
||||
echo "OK"
|
||||
else
|
||||
echo "FAIL"
|
||||
return "$status"
|
||||
fi
|
||||
while start-stop-daemon --stop --test --quiet --pidfile "$PIDFILE" \
|
||||
--exec "/usr/bin/$DAEMON"; do
|
||||
sleep 0.1
|
||||
done
|
||||
rm -f "$PIDFILE"
|
||||
return "$status"
|
||||
}
|
||||
|
||||
restart() {
|
||||
stop
|
||||
start
|
||||
}
|
||||
|
||||
reload() {
|
||||
printf "Reloading %s config: " "$DAEMON"
|
||||
start-stop-daemon --stop --signal HUP -q --pidfile "$PIDFILE" \
|
||||
--exec "/usr/bin/$DAEMON"
|
||||
status=$?
|
||||
if [ "$status" -eq 0 ]; then
|
||||
echo "OK"
|
||||
else
|
||||
echo "FAIL"
|
||||
fi
|
||||
return "$status"
|
||||
}
|
||||
|
||||
case "$1" in
|
||||
start)
|
||||
do_start
|
||||
;;
|
||||
stop)
|
||||
do_stop
|
||||
;;
|
||||
restart)
|
||||
do_stop
|
||||
sleep 1
|
||||
do_start
|
||||
;;
|
||||
start|stop|restart|reload)
|
||||
"$1";;
|
||||
*)
|
||||
echo "Usage: $0 {start|stop|restart}"
|
||||
exit 1
|
||||
echo "Usage: $0 {start|stop|restart|reload}"
|
||||
exit 1
|
||||
esac
|
||||
|
||||
Reference in New Issue
Block a user