Fix dockerfile & entrypoint:

- Resolve issue with join not being checked properly for success without
  using external tools
- Resolve issue where initial boot was not being checked properly
- Now output errors when zerotier fails to start

closes #1581

cc @altano for inspiration for this patch

Signed-off-by: Erik Hollensbe <git@hollensbe.org>
This commit is contained in:
Erik Hollensbe 2022-03-18 00:08:23 -07:00
parent 2800534445
commit f41372680d
No known key found for this signature in database
GPG Key ID: 4BB0E241A863B389
2 changed files with 8 additions and 3 deletions

View File

@ -11,6 +11,8 @@ RUN curl -sSL -o zerotier-one.deb "${PACKAGE_BASEURL}/zerotier-one_${VERSION}_${
FROM debian:buster
RUN apt-get update -qq && apt-get install openssl libssl1.1 -y
COPY --from=stage zerotier-one.deb .
RUN dpkg -i zerotier-one.deb && rm -f zerotier-one.deb

View File

@ -1,7 +1,7 @@
#!/bin/sh
grepzt() {
[ ! -n "$(cat /var/lib/zerotier-one/zerotier-one.pid)" -a -d "/proc/$(cat /var/lib/zerotier-one/zerotier-one.pid)" ]
[ -f /var/lib/zerotier-one/zerotier-one.pid -a -n "$(cat /var/lib/zerotier-one/zerotier-one.pid)" -a -d "/proc/$(cat /var/lib/zerotier-one/zerotier-one.pid)" ]
return $?
}
@ -46,6 +46,7 @@ nohup /usr/sbin/zerotier-one &
while ! grepzt
do
echo "zerotier hasn't started, waiting a second"
tail -n 10 nohup.out
sleep 1
done
@ -55,9 +56,11 @@ for i in "$@"
do
echo "joining $i"
while ! zerotier-cli join "$i"
zerotier-cli join "$i"
while [ "$(zerotier-cli get $i status)" != "OK" ]
do
echo "joining $i failed; trying again in 1s"
echo "joining $i failed (are they added in central?); trying again in 1s"
sleep 1
done
done