diff --git a/alpine/Dockerfile b/alpine/Dockerfile index 617250382..cc3a56a5b 100644 --- a/alpine/Dockerfile +++ b/alpine/Dockerfile @@ -40,6 +40,7 @@ COPY packages/dnsfix/etc /etc/ COPY packages/database/etc /etc/ COPY packages/hupper/hupper /bin/ COPY packages/hupper/etc /etc/ +COPY packages/hostlog/etc /etc/ RUN \ rc-update add swap boot && \ @@ -75,6 +76,7 @@ RUN \ rc-update add dnsfix boot && \ rc-update add database boot && \ rc-update add hupper default && \ + rc-update add hostlog default && \ ln -s /bin/busybox /init CMD ["/bin/sh"] diff --git a/alpine/packages/docker/etc/init.d/docker b/alpine/packages/docker/etc/init.d/docker index 7fae228af..3b1834b44 100755 --- a/alpine/packages/docker/etc/init.d/docker +++ b/alpine/packages/docker/etc/init.d/docker @@ -6,12 +6,6 @@ command="${DOCKER_BINARY:-/usr/bin/docker}" pidfile="/run/docker.pid" -if cat /proc/cmdline | grep -q 'com.docker.groupDir' -then - GROUPDIR="/Mac$(cat /proc/cmdline | sed -e 's/.*com.docker.groupDir="//' -e 's/".*//')" - [ -d "${GROUPDIR}" ] && DOCKER_LOGFILE="${GROUPDIR}/docker.log" -fi - if cat /proc/cmdline | grep -q 'com.docker.database' then DATABASE="$(cat /proc/cmdline | sed -e 's/.*com.docker.database="//' -e 's/".*//')" @@ -21,7 +15,8 @@ fi command_args="daemon -p \"${pidfile}\" ${DOCKER_OPTS}" -DOCKER_LOGFILE="${DOCKER_LOGFILE:-/var/log/${RC_SVCNAME}.log}" +DOCKER_LOGFILE="/var/log/docker.log}" + start_stop_daemon_args="--background \ --stderr \"${DOCKER_LOGFILE}\" --stdout \"${DOCKER_LOGFILE}\"" diff --git a/alpine/packages/hostlog/etc/init.d/hostlog b/alpine/packages/hostlog/etc/init.d/hostlog new file mode 100755 index 000000000..5a3c872f1 --- /dev/null +++ b/alpine/packages/hostlog/etc/init.d/hostlog @@ -0,0 +1,19 @@ +#!/sbin/openrc-run + +depends() +{ + before acpid docker syslog chronyd + after 9pinit 9pudfuse +} + +start() +{ + cat /proc/cmdline | grep -q 'com.docker.groupDir' || exit 0 + + ebegin "Redirecting logs to host" + + GROUPDIR="/Mac$(cat /proc/cmdline | sed -e 's/.*com.docker.groupDir="//' -e 's/".*//')" + + mount --bind "${GROUPDIR}" /var/log + + eend $? "Failed to redirect logs to host"