description "Weave Docker Network Service" start on started docker stop on stopping docker env WEAVE_DOCKER_ARGS="--env SERVICE_6783_NAME=weave" pre-start script if [ -f /etc/default/cfk ]; then eval $(cat /etc/default/cfk | sed 's/^/export /') fi weave stop || /bin/true eval $(weave env --restore) if [ -f /var/run/weave/weave.env ]; then rm /var/run/weave/weave.env fi end script script if [ -f /etc/default/cfk ]; then eval $(cat /etc/default/cfk | sed 's/^/export /') fi weave launch-router --init-peer-count ${INITIAL_PEERS:-1} --http-addr 0.0.0.0:6784 weave launch-proxy --rewrite-inspect --without-dns sleep 10 mkdir -p /var/run/weave weave env > /var/run/weave/weave.env weave expose exec docker logs -f weave 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 "^weave$") && (docker ps --format={{.Names}} | grep weaveproxy) && exit 0 status weave | grep respawn && exit 0 done end script pre-stop script if [ -f /etc/default/cfk ]; then eval $(cat /etc/default/cfk | sed 's/^/export /') fi weave stop || /bin/true eval $(weave env --restore) if [ -f /var/run/weave/weave.env ]; then rm /var/run/weave/weave.env fi end script post-stop script docker rm -f weave weaveproxy || true end script respawn respawn limit unlimited kill timeout 10