From 909890dd60ce29e5eac8d7698f520fd2509c4b2b Mon Sep 17 00:00:00 2001 From: alcapone1933 Date: Sat, 31 Dec 2022 02:43:44 +0100 Subject: [PATCH] v0.1.1 --- .drone.yml | 2 +- Dockerfile | 6 ++--- data/cronjob | 4 ++-- data/ddns-update-praefix.sh | 48 ++++++++++++++++++++++++------------- data/ddns-update.sh | 48 ++++++++++++++++++++++++------------- data/domain-ip-scheck.sh | 5 +++- data/entrypoint.sh | 36 +++++++++++++++++++++------- data/healthcheck.sh | 2 +- docker-compose.yml | 2 +- 9 files changed, 101 insertions(+), 52 deletions(-) diff --git a/.drone.yml b/.drone.yml index a624cc3..760d514 100644 --- a/.drone.yml +++ b/.drone.yml @@ -37,7 +37,7 @@ steps: repo: alcapone1933/ddns-ipv64 # tags: latest auto_tag: true - auto_tag_suffix: v0.1.0 + auto_tag_suffix: v0.1.1 trigger: branch: diff --git a/Dockerfile b/Dockerfile index 40d0a28..57402a6 100644 --- a/Dockerfile +++ b/Dockerfile @@ -4,7 +4,7 @@ LABEL maintainer="alcapone1933 " \ org.opencontainers.image.created="$(date +%Y-%m-%d\ %H:%M)" \ org.opencontainers.image.authors="alcapone1933 " \ org.opencontainers.image.url="https://hub.docker.com/r/alcapone1933/ddns-ipv64" \ - org.opencontainers.image.version="v0.1.0" \ + org.opencontainers.image.version="v0.1.1" \ org.opencontainers.image.ref.name="alcapone1933/ddns-ipv64" \ org.opencontainers.image.title="DDNS Updater ipv64.net" \ org.opencontainers.image.description="Community DDNS Updater fuer ipv64.net" @@ -12,8 +12,8 @@ LABEL maintainer="alcapone1933 " \ ENV TZ=Europe/Berlin \ CRON_TIME="*/15 * * * *" \ CRON_TIME_DIG="*/30 * * * *" \ - VERSION="v0.1.0" \ - CURL_USER_AGENT="docker-ddns-ipv64/version=$VERSION github.com/alcapone1933/docker-ddns-ipv64" \ + VERSION="v0.1.1" \ + CURL_USER_AGENT="docker-ddns-ipv64/version=v0.1.1 github.com/alcapone1933/docker-ddns-ipv64" \ SHOUTRRR_URL="" RUN apk add --update --no-cache tzdata curl bash tini bind-tools jq && \ diff --git a/data/cronjob b/data/cronjob index fc4b8c0..3feefee 100644 --- a/data/cronjob +++ b/data/cronjob @@ -1,6 +1,6 @@ # Cronjob DDNS Updater ipv64.net -*/15 * * * * /bin/bash /data/ddns-update.sh >> /var/log/cron.log 2>&1 -*/30 * * * * sleep 20 && /bin/bash /data/domain-ip-scheck.sh >> /var/log/cron.log 2>&1 +# */15 * * * * /bin/bash /data/ddns-update.sh >> /var/log/cron.log 2>&1 +# */30 * * * * sleep 20 && /bin/bash /data/domain-ip-scheck.sh >> /var/log/cron.log 2>&1 # */30 * * * * sleep 20 && echo "`date +%Y-%m-%d\ %H:%M:%S` IP CHECK - Deine DOMAIN ${DOMAIN_IPV64} HAT DIE IP=`dig +short ${DOMAIN_IPV64} A @ns1.ipv64.net`" >> /var/log/cron.log 2>&1 # */30 * * * * sleep 20 && for DOMAIN in $(echo "${DOMAIN_IPV64}" | sed -e "s/,/ /g"); do echo "`date +%Y-%m-%d\ %H:%M:%S` IP CHECK - Deine DOMAIN ${DOMAIN} HAT DIE IP=`dig +short ${DOMAIN} A @ns1.ipv64.net`" >> /var/log/cron.log 2>&1; done # */30 * * * * sleep 20 && for DOMAIN in $(echo "${DOMAIN_IPV64}" | sed -e "s/,/ /g"); do echo "`date +%Y-%m-%d\ %H:%M:%S` IP CHECK - Deine DOMAIN mit PRAEFIX ${DOMAIN_PRAEFIX}.${DOMAIN} HAT DIE IP=`dig +short ${DOMAIN_PRAEFIX}.${DOMAIN} A @ns1.ipv64.net`" >> /var/log/cron.log 2>&1; done diff --git a/data/ddns-update-praefix.sh b/data/ddns-update-praefix.sh index a317e4f..ffc6c6e 100644 --- a/data/ddns-update-praefix.sh +++ b/data/ddns-update-praefix.sh @@ -1,9 +1,10 @@ #!/usr/bin/env bash PFAD="/data" DATUM=$(date +%Y-%m-%d\ %H:%M:%S) -set -e +# set -e if ! curl -4sf --user-agent "${CURL_USER_AGENT}" "https://ipv64.net" 2>&1 > /dev/null; then echo "$DATUM FEHLER !!! - 404 Sie haben kein Netzwerk oder Internetzugang oder die Webseite ipv64.net ist nicht erreichbar" + echo "==============================================================================================" exit 1 fi STATUS="OK" @@ -11,6 +12,7 @@ NAMESERVER_CHECK=$(dig +timeout=1 @ns1.ipv64.net 2> /dev/null) echo "$NAMESERVER_CHECK" | grep -s -q "timed out" && { NAMESERVER_CHECK="Timeout" ; STATUS="FAIL" ; } if [ "${STATUS}" = "FAIL" ] ; then echo "$DATUM FEHLER !!! - 404 NAMESERVER ist nicht ist nicht erreichbar. Sie haben kein Netzwerk oder Internetzugang" + echo "==============================================================================================" exit 1 fi @@ -38,19 +40,24 @@ else echo "$DATUM UPDATE !!! ..." echo "$DATUM UPDATE !!! - Update IP=$IP - Alte-IP=$UPDIP" sleep 1 - if [ -z "${SHOUTRRR_URL:-}" ] ; then - echo > /dev/null - else - SHOUTRRR_NOTIFY - fi - echo "$IP" > $PFAD/updip.txt # curl -4sSL "https://ipv64.net/update.php?key=${DOMAIN_KEY}&domain=${DOMAIN_IPV64}&praefix=${DOMAIN_PRAEFIX}&ip=${IP}&output=min" UPDATE_IP=$(curl -4sSL --user-agent "${CURL_USER_AGENT}" "https://ipv64.net/update.php?key=${DOMAIN_KEY}&domain=${DOMAIN_IPV64}&praefix=${DOMAIN_PRAEFIX}&ip=${IP}&output=min") # if [ "$UPDATE_IP" = "ok" ] ; then if [[ "$UPDATE_IP" =~ (nochg|good|ok) ]] ; then echo "$DATUM UPDATE !!! - UPDATE IP=$IP WURDE AN IPV64.NET GESENDET" + if [ -z "${SHOUTRRR_URL:-}" ] ; then + echo > /dev/null + else + SHOUTRRR_NOTIFY + fi + echo "$IP" > $PFAD/updip.txt else echo "$DATUM FEHLER !!! - UPDATE IP=$IP WURDE NICHT AN IPV64.NET GESENTET" + CHECK_INTERVALL=$(curl -4sSL --user-agent "${CURL_USER_AGENT}" "https://ipv64.net/update.php?key=${DOMAIN_KEY}&domain=${DOMAIN_IPV64}&praefix=${DOMAIN_PRAEFIX}&ip=${IP}" | grep -o "Updateintervall") + if [ "$CHECK_INTERVALL" == "Updateintervall" ]; then + echo "$DATUM FEHLER !!! - Dein DynDNS Update Limit ist wohl erreicht" + echo "$DATUM INFO !!! - Es kann erst wieder ein Update gesedet werden wenn dein DynDNS Update Limit im grünen Bereich ist" + fi if [ -z "${SHOUTRRR_URL:-}" ] ; then echo > /dev/null else @@ -64,6 +71,7 @@ else fi # curl -4sSL https://ipv64.net/update.php?key=${DOMAIN_KEY}&domain=${DOMAIN_IPV64}praefix=${DOMAIN_PRAEFIX}&ip=&ip6=&output=min fi +echo "==============================================================================================" sleep 5 # Nachpruefung ob der DOMAIN Eintrag richtig gesetzt ist function CHECK_A_DOMAIN() { @@ -82,19 +90,28 @@ else echo "$DATUM UPDATE !!! - NACHEINTRAG DIE IP WIRD NOCH EINMAL GESETZT" echo "$DATUM UPDATE !!! - Update IP=$IP - Alte-IP=$UPDIP" sleep 5 - if [ -z "${SHOUTRRR_URL:-}" ] ; then - echo > /dev/null - else - SHOUTRRR_NOTIFY - fi - echo "$IP" > $PFAD/updip.txt # curl -4sSL "https://ipv64.net/update.php?key=${DOMAIN_KEY}&domain=${DOMAIN_IPV64}&praefix=${DOMAIN_PRAEFIX}&ip=${IP}&output=min" UPDATE_IP=$(curl -4sSL --user-agent "${CURL_USER_AGENT}" "https://ipv64.net/update.php?key=${DOMAIN_KEY}&domain=${DOMAIN_IPV64}&praefix=${DOMAIN_PRAEFIX}&ip=${IP}&output=min") # if [ "$UPDATE_IP" = "ok" ] ; then if [[ "$UPDATE_IP" =~ (nochg|good|ok) ]] ; then echo "$DATUM UPDATE !!! - UPDATE IP=$IP WURDE AN IPV64.NET GESENDET" + if [ -z "${SHOUTRRR_URL:-}" ] ; then + echo > /dev/null + else + SHOUTRRR_NOTIFY + fi + echo "$IP" > $PFAD/updip.txt + # curl -4sSL https://ipv64.net/update.php?key=${DOMAIN_KEY}&domain=${DOMAIN_IPV64}&praefix=${DOMAIN_PRAEFIX}&ip=&ip6=&output=min + sleep 15 + # echo "$DATUM NACHEINTRAG - DOMAIN mit PRAEFIX HAT DEN A-RECORD=`dig +noall +answer ${DOMAIN_PRAEFIX}.${DOMAIN_IPV64} A @ns1.ipv64.net`" + for DOMAIN in $(echo "${DOMAIN_IPV64}" | sed -e "s/,/ /g"); do echo "$DATUM NACHEINTRAG - DOMAIN mit PRAEFIX HAT DEN A-RECORD=`dig +noall +answer ${DOMAIN_PRAEFIX}.${DOMAIN} A @ns1.ipv64.net`"; done else echo "$DATUM FEHLER !!! - UPDATE IP=$IP WURDE NICHT AN IPV64.NET GESENTET" + CHECK_INTERVALL=$(curl -4sSL --user-agent "${CURL_USER_AGENT}" "https://ipv64.net/update.php?key=${DOMAIN_KEY}&domain=${DOMAIN_IPV64}&praefix=${DOMAIN_PRAEFIX}&ip=${IP}" | grep -o "Updateintervall") + if [ "$CHECK_INTERVALL" == "Updateintervall" ]; then + echo "$DATUM FEHLER !!! - Dein DynDNS Update Limit ist wohl erreicht" + echo "$DATUM INFO !!! - Es kann erst wieder ein Update gesedet werden wenn dein DynDNS Update Limit im grünen Bereich ist" + fi if [ -z "${SHOUTRRR_URL:-}" ] ; then echo > /dev/null else @@ -106,10 +123,7 @@ else fi fi fi - # curl -4sSL https://ipv64.net/update.php?key=${DOMAIN_KEY}&domain=${DOMAIN_IPV64}&praefix=${DOMAIN_PRAEFIX}&ip=&ip6=&output=min - sleep 15 - # echo "$DATUM NACHEINTRAG - DOMAIN mit PRAEFIX HAT DEN A-RECORD=`dig +noall +answer ${DOMAIN_PRAEFIX}.${DOMAIN_IPV64} A @ns1.ipv64.net`" - for DOMAIN in $(echo "${DOMAIN_IPV64}" | sed -e "s/,/ /g"); do echo "$DATUM NACHEINTRAG - DOMAIN mit PRAEFIX HAT DEN A-RECORD=`dig +noall +answer ${DOMAIN_PRAEFIX}.${DOMAIN} A @ns1.ipv64.net`"; done fi } CHECK_A_DOMAIN +echo "==============================================================================================" diff --git a/data/ddns-update.sh b/data/ddns-update.sh index a5b5efe..5985b54 100644 --- a/data/ddns-update.sh +++ b/data/ddns-update.sh @@ -1,9 +1,10 @@ #!/usr/bin/env bash PFAD="/data" DATUM=$(date +%Y-%m-%d\ %H:%M:%S) -set -e +# set -e if ! curl -4sf --user-agent "${CURL_USER_AGENT}" "https://ipv64.net" 2>&1 > /dev/null; then echo "$DATUM FEHLER !!! - 404 Sie haben kein Netzwerk oder Internetzugang oder die Webseite ipv64.net ist nicht erreichbar" + echo "==============================================================================================" exit 1 fi STATUS="OK" @@ -11,6 +12,7 @@ NAMESERVER_CHECK=$(dig +timeout=1 @ns1.ipv64.net 2> /dev/null) echo "$NAMESERVER_CHECK" | grep -s -q "timed out" && { NAMESERVER_CHECK="Timeout" ; STATUS="FAIL" ; } if [ "${STATUS}" = "FAIL" ] ; then echo "$DATUM FEHLER !!! - 404 NAMESERVER ist nicht ist nicht erreichbar. Sie haben kein Netzwerk oder Internetzugang" + echo "==============================================================================================" exit 1 fi @@ -38,19 +40,24 @@ else echo "$DATUM UPDATE !!! ..." echo "$DATUM UPDATE !!! - Update IP=$IP - Alte-IP=$UPDIP" sleep 1 - if [ -z "${SHOUTRRR_URL:-}" ] ; then - echo > /dev/null - else - SHOUTRRR_NOTIFY - fi - echo "$IP" > $PFAD/updip.txt # curl -4sSL "https://ipv64.net/update.php?key=${DOMAIN_KEY}&domain=${DOMAIN_IPV64}&ip=${IP}&output=min" UPDATE_IP=$(curl -4sSL --user-agent "${CURL_USER_AGENT}" "https://ipv64.net/update.php?key=${DOMAIN_KEY}&domain=${DOMAIN_IPV64}&ip=${IP}&output=min") # if [ "$UPDATE_IP" = "ok" ] ; then if [[ "$UPDATE_IP" =~ (nochg|good|ok) ]] ; then echo "$DATUM UPDATE !!! - UPDATE IP=$IP WURDE AN IPV64.NET GESENDET" + if [ -z "${SHOUTRRR_URL:-}" ] ; then + echo > /dev/null + else + SHOUTRRR_NOTIFY + fi + echo "$IP" > $PFAD/updip.txt else echo "$DATUM FEHLER !!! - UPDATE IP=$IP WURDE NICHT AN IPV64.NET GESENTET" + CHECK_INTERVALL=$(curl -4sSL --user-agent "${CURL_USER_AGENT}" "https://ipv64.net/update.php?key=${DOMAIN_KEY}&domain=${DOMAIN_IPV64}&ip=${IP}" | grep -o "Updateintervall") + if [ "$CHECK_INTERVALL" == "Updateintervall" ]; then + echo "$DATUM FEHLER !!! - Dein DynDNS Update Limit ist wohl erreicht" + echo "$DATUM INFO !!! - Es kann erst wieder ein Update gesedet werden wenn dein DynDNS Update Limit im grünen Bereich ist" + fi if [ -z "${SHOUTRRR_URL:-}" ] ; then echo > /dev/null else @@ -64,6 +71,7 @@ else fi # curl -4sSL https://ipv64.net/update.php?key=${DOMAIN_KEY}&domain=${DOMAIN_IPV64}&ip=&ip6=&output=min fi +echo "==============================================================================================" sleep 5 # Nachpruefung ob der DOMAIN Eintrag richtig gesetzt ist function CHECK_A_DOMAIN() { @@ -82,19 +90,28 @@ else echo "$DATUM UPDATE !!! - NACHEINTRAG DIE IP WIRD NOCH EINMAL GESETZT" echo "$DATUM UPDATE !!! - Update IP=$IP - Alte-IP=$UPDIP" sleep 5 - if [ -z "${SHOUTRRR_URL:-}" ] ; then - echo > /dev/null - else - SHOUTRRR_NOTIFY - fi - echo "$IP" > $PFAD/updip.txt # curl -4sSL "https://ipv64.net/update.php?key=${DOMAIN_KEY}&domain=${DOMAIN_IPV64}&ip=${IP}&output=min" UPDATE_IP=$(curl -4sSL --user-agent "${CURL_USER_AGENT}" "https://ipv64.net/update.php?key=${DOMAIN_KEY}&domain=${DOMAIN_IPV64}&ip=${IP}&output=min") # if [ "$UPDATE_IP" = "ok" ] ; then if [[ "$UPDATE_IP" =~ (nochg|good|ok) ]] ; then echo "$DATUM UPDATE !!! - UPDATE IP=$IP WURDE AN IPV64.NET GESENDET" + if [ -z "${SHOUTRRR_URL:-}" ] ; then + echo > /dev/null + else + SHOUTRRR_NOTIFY + fi + echo "$IP" > $PFAD/updip.txt + # curl -4sSL https://ipv64.net/update.php?key=${DOMAIN_KEY}&domain=${DOMAIN_IPV64}&ip=&ip6=&output=min + sleep 15 + # echo "$DATUM NACHEINTRAG - DOMAIN HAT DEN A-RECORD=`dig +noall +answer ${DOMAIN_IPV64} A @ns1.ipv64.net`" + for DOMAIN in $(echo "${DOMAIN_IPV64}" | sed -e "s/,/ /g"); do echo "$DATUM NACHEINTRAG - DOMAIN HAT DEN A-RECORD=`dig +noall +answer ${DOMAIN} A @ns1.ipv64.net`"; done else echo "$DATUM FEHLER !!! - UPDATE IP=$IP WURDE NICHT AN IPV64.NET GESENTET" + CHECK_INTERVALL=$(curl -4sSL --user-agent "${CURL_USER_AGENT}" "https://ipv64.net/update.php?key=${DOMAIN_KEY}&domain=${DOMAIN_IPV64}&ip=${IP}" | grep -o "Updateintervall") + if [ "$CHECK_INTERVALL" == "Updateintervall" ]; then + echo "$DATUM FEHLER !!! - Dein DynDNS Update Limit ist wohl erreicht" + echo "$DATUM INFO !!! - Es kann erst wieder ein Update gesedet werden wenn dein DynDNS Update Limit im grünen Bereich ist" + fi if [ -z "${SHOUTRRR_URL:-}" ] ; then echo > /dev/null else @@ -106,10 +123,7 @@ else fi fi fi - # curl -4sSL https://ipv64.net/update.php?key=${DOMAIN_KEY}&domain=${DOMAIN_IPV64}&ip=&ip6=&output=min - sleep 15 - # echo "$DATUM NACHEINTRAG - DOMAIN HAT DEN A-RECORD=`dig +noall +answer ${DOMAIN_IPV64} A @ns1.ipv64.net`" - for DOMAIN in $(echo "${DOMAIN_IPV64}" | sed -e "s/,/ /g"); do echo "$DATUM NACHEINTRAG - DOMAIN HAT DEN A-RECORD=`dig +noall +answer ${DOMAIN} A @ns1.ipv64.net`"; done fi } CHECK_A_DOMAIN +echo "==============================================================================================" diff --git a/data/domain-ip-scheck.sh b/data/domain-ip-scheck.sh index 8882210..c25362b 100644 --- a/data/domain-ip-scheck.sh +++ b/data/domain-ip-scheck.sh @@ -1,8 +1,9 @@ #!/usr/bin/env bash -set -e +# set -e DATUM=$(date +%Y-%m-%d\ %H:%M:%S) if ! curl -4sf --user-agent "${CURL_USER_AGENT}" "https://ipv64.net" 2>&1 > /dev/null; then echo "$DATUM FEHLER !!! - 404 Sie haben kein Netzwerk oder Internetzugang oder die Webseite ipv64.net ist nicht erreichbar" + echo "==============================================================================================" exit 1 fi STATUS="OK" @@ -10,6 +11,7 @@ NAMESERVER_CHECK=$(dig +timeout=1 @ns1.ipv64.net 2> /dev/null) echo "$NAMESERVER_CHECK" | grep -s -q "timed out" && { NAMESERVER_CHECK="Timeout" ; STATUS="FAIL" ; } if [ "${STATUS}" = "FAIL" ] ; then echo "$DATUM FEHLER !!! - 404 NAMESERVER ist nicht ist nicht erreichbar. Sie haben kein Netzwerk oder Internetzugang" + echo "==============================================================================================" exit 1 fi @@ -22,3 +24,4 @@ else echo "`date +%Y-%m-%d\ %H:%M:%S` IP CHECK - Deine DOMAIN ${DOMAIN} HAT DIE IP=`dig +short ${DOMAIN} A @ns1.ipv64.net`" >> /var/log/cron.log 2>&1 done fi +echo "==============================================================================================" diff --git a/data/entrypoint.sh b/data/entrypoint.sh index 6e362f2..612fd65 100644 --- a/data/entrypoint.sh +++ b/data/entrypoint.sh @@ -1,6 +1,6 @@ #!/usr/bin/env bash # set -x -set -e +# set -e DATUM=$(date +%Y-%m-%d\ %H:%M:%S) # cleanup cleanup() { @@ -111,10 +111,21 @@ if [[ "$CHECK" =~ (nochg|good|ok) ]] ; then echo "$DATUM CHECK - Die Angaben sind richtig gesetzt: DOMAIN und DOMAIN KEY" sleep 5 for DOMAIN in $(echo "${DOMAIN_IPV64}" | sed -e "s/,/ /g"); do echo "$DATUM IP CHECK - Deine DOMAIN ${DOMAIN} HAT DIE IP=`dig +short ${DOMAIN} A @ns1.ipv64.net`"; done + echo "${IP}" > /data/updip.txt + sleep 2 else - echo "$DATUM FEHLER !!! - Die Angaben sind falsch gesetzt: DOMAIN oder DOMAIN KEY" - exit 1 + CHECK_INTERVALL=$(curl -4sSL --user-agent "${CURL_USER_AGENT}" "https://ipv64.net/update.php?key=${DOMAIN_KEY}&domain=${DOMAIN_IPV64}&ip=${IP}" | grep -o "Updateintervall") + if [ "$CHECK_INTERVALL" == "Updateintervall" ]; then + echo "$DATUM CHECK - Die Angaben sind richtig gesetzt: DOMAIN und DOMAIN KEY" + echo "$DATUM FEHLER !!! - Dein DynDNS Update Limit ist wohl erreicht" + echo "$DATUM INFO !!! - Es kann erst wieder ein Update gesedet werden wenn dein DynDNS Update Limit im grünen Bereich ist" + else + echo "$DATUM FEHLER !!! - Die Angaben sind falsch gesetzt: DOMAIN oder DOMAIN KEY" + echo "$DATUM INFO !!! - Stoppen sie den Container und Starten sie den Container mit den richtigen Angaben erneut" + return + fi fi + echo "${CRON_TIME} /bin/bash /data/ddns-update.sh >> /var/log/cron.log 2>&1" > /etc/cron.d/container_cronjob echo "${CRON_TIME_DIG} sleep 20 && /bin/bash /data/domain-ip-scheck.sh >> /var/log/cron.log 2>&1" >> /etc/cron.d/container_cronjob # echo "$CRON_TIME_DIG" 'sleep 20 && echo "`date +%Y-%m-%d\ %H:%M:%S` IP CHECK - Deine DOMAIN ${DOMAIN_IPV64} HAT DIE IP=`dig +short ${DOMAIN_IPV64} A @ns1.ipv64.net`" >> /var/log/cron.log 2>&1' >> /etc/cron.d/container_cronjob @@ -127,9 +138,19 @@ if [[ "$CHECK" =~ (nochg|good|ok) ]] ; then echo "$DATUM CHECK - Die Angaben sind richtig gesetzt: DOMAIN mit PRAEFIX und DOMAIN KEY" sleep 5 for DOMAIN in $(echo "${DOMAIN_IPV64}" | sed -e "s/,/ /g"); do echo "$DATUM IP CHECK - Deine DOMAIN mit PRAEFIX ${DOMAIN_PRAEFIX}.${DOMAIN} HAT DIE IP=`dig +short ${DOMAIN_PRAEFIX}.${DOMAIN} A @ns1.ipv64.net`"; done + echo "${IP}" > /data/updip.txt + sleep 2 else - echo "$DATUM FEHLER !!! - Die Angaben sind falsch gesetzt: DOMAIN mit PRAEFIX oder DOMAIN KEY" - exit 1 + CHECK_INTERVALL=$(curl -4sSL --user-agent "${CURL_USER_AGENT}" "https://ipv64.net/update.php?key=${DOMAIN_KEY}&domain=${DOMAIN_IPV64}&praefix=${DOMAIN_PRAEFIX}&ip=${IP}" | grep -o "Updateintervall") + if [ "$CHECK_INTERVALL" == "Updateintervall" ]; then + echo "$DATUM CHECK - Die Angaben sind richtig gesetzt: DOMAIN mit PRAEFIX und DOMAIN KEY" + echo "$DATUM FEHLER !!! - Dein DynDNS Update Limit ist wohl erreicht" + echo "$DATUM INFO !!! - Es kann erst wieder ein Update gesedet werden wenn dein DynDNS Update Limit im grünen Bereich ist" + else + echo "$DATUM FEHLER !!! - Die Angaben sind falsch gesetzt: DOMAIN mit PRAEFIX oder DOMAIN KEY" + echo "$DATUM INFO !!! - Stoppen sie den Container und Starten sie den Container mit den richtigen Angaben erneut" + return + fi fi echo "${CRON_TIME} /bin/bash /data/ddns-update-praefix.sh >> /var/log/cron.log 2>&1" > /etc/cron.d/container_cronjob @@ -143,12 +164,9 @@ else Domain_default fi -echo "${IP}" > /data/updip.txt -sleep 2 - /usr/bin/crontab /etc/cron.d/container_cronjob /usr/sbin/crond - +echo "==============================================================================================" set tail -f /var/log/cron.log "$@" exec "$@" & diff --git a/data/healthcheck.sh b/data/healthcheck.sh index d8599a9..8c9299e 100644 --- a/data/healthcheck.sh +++ b/data/healthcheck.sh @@ -1,6 +1,6 @@ #!/usr/bin/env bash DATUM=$(date +%Y-%m-%d\ %H:%M:%S) -set -e +# set -e if ! curl -4sf --user-agent "${CURL_USER_AGENT}" "https://ipv64.net" 2>&1 > /dev/null; then echo "$DATUM FEHLER !!! - 404 Sie haben kein Netzwerk oder Internetzugang oder die Webseite ipv64.net ist nicht erreichbar" exit 1 diff --git a/docker-compose.yml b/docker-compose.yml index 5714433..d45dbf4 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -4,7 +4,7 @@ services: # build: # dockerfile: ./Dockerfile image: alcapone1933/ddns-ipv64:latest - # image: alcapone1933/ddns-ipv64:v0.1.0 + # image: alcapone1933/ddns-ipv64:v0.1.1 container_name: ddns-ipv64 restart: always # volumes: