[meta-virtualization] [PATCH] docker: fix broken init script

Chin Huat Ang chin.huat.ang at intel.com
Thu Nov 15 17:31:15 PST 2018


Fix numerous docker.init issues such as missing runtime dependency
util-linux-unshare, incomplete handling of start/stop etc. operations
and minor typos.

Signed-off-by: Chin Huat Ang <chin.huat.ang at intel.com>
---
 recipes-containers/docker/docker-ce_git.bb  |  2 +-
 recipes-containers/docker/docker_git.bb     |  2 +-
 recipes-containers/docker/files/docker.init | 12 ++++++++----
 3 files changed, 10 insertions(+), 6 deletions(-)

diff --git a/recipes-containers/docker/docker-ce_git.bb b/recipes-containers/docker/docker-ce_git.bb
index 7a41850..caf6d70 100644
--- a/recipes-containers/docker/docker-ce_git.bb
+++ b/recipes-containers/docker/docker-ce_git.bb
@@ -62,7 +62,7 @@ DEPENDS = " \
 PACKAGES =+ "${PN}-contrib"
 
 DEPENDS_append_class-target = " lvm2"
-RDEPENDS_${PN} = "util-linux iptables \
+RDEPENDS_${PN} = "util-linux util-linux-unshare iptables \
                   ${@bb.utils.contains('DISTRO_FEATURES', 'aufs', 'aufs-util', '', d)} \
                   ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', '', 'cgroup-lite', d)} \
                  "
diff --git a/recipes-containers/docker/docker_git.bb b/recipes-containers/docker/docker_git.bb
index f63cee1..7957808 100644
--- a/recipes-containers/docker/docker_git.bb
+++ b/recipes-containers/docker/docker_git.bb
@@ -67,7 +67,7 @@ PACKAGECONFIG[seccomp] = "seccomp,,libseccomp"
 PACKAGES =+ "${PN}-contrib"
 
 DEPENDS_append_class-target = " lvm2"
-RDEPENDS_${PN} = "util-linux iptables \
+RDEPENDS_${PN} = "util-linux util-linux-unshare iptables \
                   ${@bb.utils.contains('DISTRO_FEATURES', 'aufs', 'aufs-util', '', d)} \
                   ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', '', 'cgroup-lite', d)} \
                  "
diff --git a/recipes-containers/docker/files/docker.init b/recipes-containers/docker/files/docker.init
index 2e8eb9e..0aea8d0 100644
--- a/recipes-containers/docker/files/docker.init
+++ b/recipes-containers/docker/files/docker.init
@@ -22,7 +22,7 @@
 # Source function library.
 . /etc/init.d/functions
 
-prog="docker"
+prog="dockerd"
 unshare=/usr/bin/unshare
 exec="/usr/bin/$prog"
 pidfile="/var/run/$prog.pid"
@@ -40,7 +40,7 @@ start() {
     if ! [ -f $pidfile ]; then
         printf "Starting $prog:\t"
         echo -e "\n$(date)\n" >> $logfile
-        "$unshare" -m -- $exec daemon $other_args &>> $logfile &
+        "$unshare" -m -- $exec $other_args &>> $logfile &
         pid=$!
         touch $lockfile
         # wait up to 10 seconds for the pidfile to exist.  see
@@ -83,7 +83,7 @@ force_reload() {
 }
 
 rh_status() {
-    status -p $pidfile $prog
+    status $prog
 }
 
 rh_status_q() {
@@ -99,24 +99,28 @@ check_for_cleanup() {
 
 case "$1" in
     start)
+        rh_status_q && exit 0
         $1
         ;;
     stop)
+        rh_status_q || exit 0
         $1
         ;;
     restart)
         $1
         ;;
     reload)
+        rh_status_q || exit 7
         $1
         ;;
     force-reload)
         force_reload
         ;;
     status)
-        status
+        rh_status
         ;;
     condrestart|try-restart)
+        rh_status_q || exit 0
         restart
         ;;
     *)
-- 
2.7.4



More information about the meta-virtualization mailing list