check health with tor is blocked

This commit is contained in:
Jesús 2021-07-28 20:16:32 -05:00
parent 5f07a8a46f
commit fade453424
No known key found for this signature in database
GPG Key ID: F6EE7BC59A315766
3 changed files with 22 additions and 3 deletions

View File

@ -41,3 +41,9 @@ DEBUGGING_SAVE_RESPONSES=False
MAX_CIRCUIT=500 # seconds MAX_CIRCUIT=500 # seconds
CIRCUIT_TIMEOUT=500 # seconds CIRCUIT_TIMEOUT=500 # seconds
#
# Health TOR check
#
URL_CHECK=https://www.youtube.com/results?search_query=rms

View File

@ -4,7 +4,7 @@ LABEL MAINTAINER="heckyel@riseup.net"
ENV LANG C.UTF-8 ENV LANG C.UTF-8
ENV LC_ALL C.UTF-8 ENV LC_ALL C.UTF-8
RUN apk add --no-cache musl-dev build-base gcc libffi-dev python3-dev patch git py3-pip tor RUN apk add --no-cache musl-dev build-base gcc libffi-dev python3-dev patch git py3-pip tor curl
ARG APP_DIR="/srv/app" ARG APP_DIR="/srv/app"
ARG YT_REPO="https://git.sr.ht/~heckyel/yt-local" ARG YT_REPO="https://git.sr.ht/~heckyel/yt-local"

View File

@ -87,6 +87,19 @@ ExcludeExitNodes {US}
StrictNodes 1 StrictNodes 1
EOF EOF
tor -f /etc/tor/torrc --runasdaemon 1 tor -f /etc/tor/torrc --runasdaemon 1
fi
exec /usr/bin/python3 /srv/app/server.py # check health tor
while :; do
checkurl=$(curl --socks5 localhost:9050 -o /dev/null -s -w "%{http_code}\n" "${URL_CHECK:-https://www.youtube.com/results?search_query=rms}")
if [ "$checkurl" = '502' ] || [ "$checkurl" = '302' ]; then
pkill tor && tor -f /etc/tor/torrc --runasdaemon 0 2>&1
pkill python3 && /usr/bin/python3 /srv/app/server.py
else
pgrep python3 > /dev/null || exec /usr/bin/python3 /srv/app/server.py
fi
sleep 5
done
else
exec /usr/bin/python3 /srv/app/server.py
fi