Update Public IP resolving in docker-entrypoint.sh (#2)

This commit is contained in:
Slava 2023-11-21 13:22:45 +02:00 committed by GitHub
parent 729f804ccf
commit 71a170513b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 8 additions and 2 deletions

View File

@ -25,9 +25,15 @@ if [[ -n "${NAT_PUBLIC_IP_AUTO}" ]]; then
SECONDS=0
SLEEP=5
while (( $SECONDS < $WAIT )); do
PUBLIC_IP_ARGS=--nat=extip:$(curl -s -f -m 5 "${NAT_PUBLIC_IP_AUTO}")
PUBLIC_IP=$(curl -s -f -m 5 "${NAT_PUBLIC_IP_AUTO}")
# Check if exit code is 0 and returned value is not empty
[[ $? -eq 0 && -n "${PUBLIC_IP_ARGS}" ]] && { echo "Public: Set extip: ${PUBLIC_IP_ARGS}"; break; } || { echo "Can't get Public IP - Retry in $SLEEP seconds / $((WAIT - SECONDS))"; }
if [[ $? -eq 0 && -n "${PUBLIC_IP}" ]]; then
PUBLIC_IP_ARGS="--nat=extip:${PUBLIC_IP}"
echo "Public: Set extip: ${PUBLIC_IP_ARGS}"
break
else
echo "Can't get Public IP - Retry in $SLEEP seconds / $((WAIT - SECONDS))"
fi
# Sleep and check again
sleep $SLEEP
done