Add in startup code for the pinata specific tools. Should be split out as packages later

Signed-off-by: Justin Cormack <justin.cormack@unikernel.com>
This commit is contained in:
Justin Cormack 2015-12-10 11:26:58 +00:00
parent d82559a915
commit bc0288a2eb
8 changed files with 83 additions and 5 deletions

View File

@ -35,10 +35,12 @@ RUN \
rc-update add localmount && \
rc-update add klogd && \
rc-update add docker default && \
rc-update add 9pinit default && \
rc-update add 9pudc default && \
rc-update add mdnstool default && \
ln -s /bin/busybox /init
# docker mac specific, and should be moved anyway
RUN mkdir /Mac /Socket
# docker mac specific, should be packages
COPY packages/9pudc/9pudc packages/mdnstool/mdnstool /sbin/
CMD ["/bin/sh"]

View File

@ -2,7 +2,7 @@ all: initrd.img
ETCFILES=etc/issue etc/motd etc/inittab etc/network/interfaces
ETCFILES+=etc/hostname- etc/resolv.conf- etc/hosts-
ETCFILES+=etc/init.d/chronyd
ETCFILES+=etc/init.d/chronyd etc/init.d/9pinit etc/init.d/9pudc etc/init.d/mdnstool
initrd.img: Dockerfile mkinitrd.sh repositories $(ETCFILES)
rm -f initrd.img

View File

@ -1,2 +0,0 @@
socket /Socket 9p trans=virtio,dfltuid=1001,dfltgid=50,version=9p2000 0 0
plan9 /Mac 9p trans=virtio,dfltuid=1001,dfltgid=50,version=9p2000 0 0

11
alpine/etc/init.d/9pinit Executable file
View File

@ -0,0 +1,11 @@
#!/sbin/openrc-run
start()
{
ebegin "Mounting 9p sockets"
mkdir -p /Socket
mount -t 9p -o trans=virtio,dfltuid=1001,dfltgid=50,version=9p2000 socket /Socket
mkdir -p /Mac
mount -t 9p -o trans=virtio,dfltuid=1001,dfltgid=50,version=9p2000.u plan9 /Mac
eend 0
}

32
alpine/etc/init.d/9pudc Executable file
View File

@ -0,0 +1,32 @@
#!/sbin/openrc-run
description="9p socket proxy client"
depend()
{
need 9pinit
}
start()
{
ebegin "Starting docker socket passthrough"
[ -n "${PIDFILE}" ] || PIDFILE=/var/run/9pudc.pid
start-stop-daemon --start --quiet \
--exec /sbin/9pudc \
--pidfile "${PIDFILE}" \
-- -path /Socket -sock /var/run/docker.sock -detach
eend $? "Failed to start 9pudc"
}
stop()
{
ebegin "Stopping docker socket passthrough"
[ -n "${PIDFILE}" ] || PIDFILE=/var/run/9pudc.pid
start-stop-daemon --stop --quiet \
--pidfile "${PIDFILE}"
eend $? "Failed to stop 9pudc"
}

33
alpine/etc/init.d/mdnstool Executable file
View File

@ -0,0 +1,33 @@
#!/sbin/openrc-run
description="mDNS server"
depend()
{
need 9pinit net
after firewall
}
start()
{
ebegin "Starting mDNS serevr"
[ -n "${PIDFILE}" ] || PIDFILE=/var/run/mdnstool.pid
start-stop-daemon --start --quiet \
--exec /sbin/mdnstool \
--pidfile "${PIDFILE}" \
-- if eth0 -detach
eend $? "Failed to start mDNS server"
}
stop()
{
ebegin "Stopping mDNS server"
[ -n "${PIDFILE}" ] || PIDFILE=/var/run/mdnstool.pid
start-stop-daemon --stop --quiet \
--pidfile "${PIDFILE}"
eend $? "Failed to stop mDNS server"
}

View File

@ -3,6 +3,7 @@ all: 9pudc
9pudc: Dockerfile main.go
docker build -t 9pudc:test .
docker run 9pudc:test cat /go/bin/9pudc > 9pudc
chmod 555 9pudc
clean:
rm -f 9pudc

View File

@ -3,6 +3,7 @@ all: mdnstool
mdnstool: Dockerfile mdnstool.go mdnsmon/mdnsmon.go
docker build -t mdnstool:test .
docker run mdnstool:test cat /go/bin/mdnstool > mdnstool
chmod 555 mdnstool
clean:
rm -f mdnstool