UNPKG

cfk

Version:
61 lines (48 loc) 1.73 kB
description "Weave Docker Network Service" start on started weave stop on stopping weave env WEAVEDISCOVERY_DOCKER_ARGS="--env SERVICE_NAME=discovery -h discovery.weave.local --dns 172.42.0.1 --dns 8.8.8.8 --dns 8.8.4.4" pre-start script eval $(cfk-env) discovery leave || true end script script # Make sure that weave services are running WEAVE_RUNNING=$(docker ps --format "{{ .Names }}" | grep ^weave$ | wc -l) if [ "$WEAVE_RUNNING" -ne "1" ]; then echo "Error: Weave router is not running!" exit 1 fi PROXY_RUNNING=$(docker ps --format "{{ .Names }}" | grep ^weaveproxy$ | wc -l) if [ "$PROXY_RUNNING" -ne "1" ]; then echo "Error: Weave proxy is not running!" exit 1 fi eval $(cfk-env) IMAGE_VERSION=git-f4e79790b0a0 WEAVE_DISCOVERY_NAME=discovery \ discovery join --advertise=${HOST_IP:?host ip required}:${DISCOVERY_PORT:-6783} \ ${DISCOVERY_TOKEN:?discovery token required} sleep 10 exec docker logs -f discovery end script post-start script DEAD_CONTAINERS=$(docker ps -a --filter "status=dead" --format "{{ .ID }}") if [ $(echo $DEAD_CONTAINERS | wc -w) -gt 0 ]; then $(echo $DEAD_CONTAINERS | xargs docker rm -f || true); fi EXITED_CONTAINERS=$(docker ps -a --filter "status=exited" --format "{{ .ID }}") if [ $(echo $EXITED_CONTAINERS | wc -w) -gt 0 ]; then $(echo $EXITED_CONTAINERS | xargs docker rm -f || true); fi while true; do sleep 30 docker ps --format={{.Names}} | grep discovery && exit 0 status discovery | grep respawn && exit 0 done end script pre-stop script eval $(cfk-env) discovery leave || true end script post-stop script docker rm -f discovery || true end script respawn respawn limit unlimited kill timeout 10