Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH] package/docker-engine: add sysv init script
@ 2019-01-30 22:28 Peter Korsgaard
  2019-01-31  3:11 ` Christian Stewart
  0 siblings, 1 reply; 3+ messages in thread
From: Peter Korsgaard @ 2019-01-30 22:28 UTC (permalink / raw)
  To: buildroot

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
---
 package/docker-engine/S60dockerd       | 38 ++++++++++++++++++++++++++++++++++
 package/docker-engine/docker-engine.mk |  5 +++++
 2 files changed, 43 insertions(+)
 create mode 100755 package/docker-engine/S60dockerd

diff --git a/package/docker-engine/S60dockerd b/package/docker-engine/S60dockerd
new file mode 100755
index 0000000000..def8bea149
--- /dev/null
+++ b/package/docker-engine/S60dockerd
@@ -0,0 +1,38 @@
+#!/bin/sh
+
+NAME=dockerd
+DAEMON=/usr/bin/$NAME
+PIDFILE=/var/run/$NAME.pid
+DAEMON_ARGS=""
+
+[ -r /etc/default/$NAME ] && . /etc/default/$NAME $1
+
+do_start() {
+        echo -n "Starting $NAME: "
+        start-stop-daemon --start --quiet --background --make-pidfile \
+		--pidfile $PIDFILE --exec $DAEMON -- $DAEMON_ARGS \
+                && echo "OK" || echo "FAIL"
+}
+
+do_stop() {
+        echo -n "Stopping $NAME: "
+        start-stop-daemon --stop --quiet --pidfile $PIDFILE \
+                && echo "OK" || echo "FAIL"
+}
+
+case "$1" in
+        start)
+                do_start
+                ;;
+        stop)
+                do_stop
+                ;;
+        restart)
+                do_stop
+                sleep 1
+                do_start
+                ;;
+	*)
+                echo "Usage: $0 {start|stop|restart}"
+                exit 1
+esac
diff --git a/package/docker-engine/docker-engine.mk b/package/docker-engine/docker-engine.mk
index f19c1d995c..aae44ab6df 100644
--- a/package/docker-engine/docker-engine.mk
+++ b/package/docker-engine/docker-engine.mk
@@ -73,6 +73,11 @@ define DOCKER_ENGINE_INSTALL_INIT_SYSTEMD
 		$(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/docker.service
 endef
 
+define DOCKER_ENGINE_INSTALL_INIT_SYSV
+	$(INSTALL) -D -m 755 package/docker-engine/S60dockerd \
+		$(TARGET_DIR)/etc/init.d/S60dockerd
+endef
+
 define DOCKER_ENGINE_USERS
 	- - docker -1 * - - - Docker Application Container Framework
 endef
-- 
2.11.0

^ permalink raw reply related	[flat|nested] 3+ messages in thread

* [Buildroot] [PATCH] package/docker-engine: add sysv init script
  2019-01-30 22:28 [Buildroot] [PATCH] package/docker-engine: add sysv init script Peter Korsgaard
@ 2019-01-31  3:11 ` Christian Stewart
  2019-01-31  7:32   ` Peter Korsgaard
  0 siblings, 1 reply; 3+ messages in thread
From: Christian Stewart @ 2019-01-31  3:11 UTC (permalink / raw)
  To: buildroot

Hi Peter,

Peter Korsgaard <peter@korsgaard.com> writes:

> +++ b/package/docker-engine/S60dockerd
> @@ -0,0 +1,38 @@
> +#!/bin/sh
> +
> +NAME=dockerd
> +DAEMON=/usr/bin/$NAME
> +PIDFILE=/var/run/$NAME.pid
> +DAEMON_ARGS=""

We pull the systemd unit file from /contrib/init/systemd/docker.service
within the docker-engine codebase.

There also exists /contrib/init/openrc as well as sysvinit-debian,
sysvinit-redhat, and upstart. I guess none of these are suitable for the
sysv init system.

> +define DOCKER_ENGINE_INSTALL_INIT_SYSV
> +	$(INSTALL) -D -m 755 package/docker-engine/S60dockerd \
> +		$(TARGET_DIR)/etc/init.d/S60dockerd
> +endef

In general LGTM.

Acked-by: Christian Stewart <christian@paral.in>

Best,
Christian

^ permalink raw reply	[flat|nested] 3+ messages in thread

* [Buildroot] [PATCH] package/docker-engine: add sysv init script
  2019-01-31  3:11 ` Christian Stewart
@ 2019-01-31  7:32   ` Peter Korsgaard
  0 siblings, 0 replies; 3+ messages in thread
From: Peter Korsgaard @ 2019-01-31  7:32 UTC (permalink / raw)
  To: buildroot

>>>>> "Christian" == Christian Stewart <christian@paral.in> writes:

 > Hi Peter,
 > Peter Korsgaard <peter@korsgaard.com> writes:

 >> +++ b/package/docker-engine/S60dockerd
 >> @@ -0,0 +1,38 @@
 >> +#!/bin/sh
 >> +
 >> +NAME=dockerd
 >> +DAEMON=/usr/bin/$NAME
 >> +PIDFILE=/var/run/$NAME.pid
 >> +DAEMON_ARGS=""

 > We pull the systemd unit file from /contrib/init/systemd/docker.service
 > within the docker-engine codebase.

 > There also exists /contrib/init/openrc as well as sysvinit-debian,
 > sysvinit-redhat, and upstart. I guess none of these are suitable for the
 > sysv init system.

Yes, but those all look very complicated and/or does more than we want,
E.G. handling the croupfs mounts which we do in S30cgroupfs.


 >> +define DOCKER_ENGINE_INSTALL_INIT_SYSV
 >> +	$(INSTALL) -D -m 755 package/docker-engine/S60dockerd \
 >> +		$(TARGET_DIR)/etc/init.d/S60dockerd
 >> +endef

 > In general LGTM.

 > Acked-by: Christian Stewart <christian@paral.in>

Thanks.

Committed, thanks.

-- 
Bye, Peter Korsgaard

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2019-01-31  7:32 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-01-30 22:28 [Buildroot] [PATCH] package/docker-engine: add sysv init script Peter Korsgaard
2019-01-31  3:11 ` Christian Stewart
2019-01-31  7:32   ` Peter Korsgaard

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox