Update v0.0.3

This commit is contained in:
alcapone1933
2022-10-29 20:18:39 +02:00
parent b446b29ad1
commit 0d08468b46
6 changed files with 47 additions and 19 deletions

View File

@@ -37,7 +37,7 @@ steps:
repo: alcapone1933/ddns-ipv64 repo: alcapone1933/ddns-ipv64
# tags: latest # tags: latest
auto_tag: true auto_tag: true
auto_tag_suffix: v0.0.2 auto_tag_suffix: v0.0.3
trigger: trigger:
branch: branch:
@@ -68,7 +68,7 @@ steps:
repo: ghcr.io/alcapone1933/ddns-ipv64 repo: ghcr.io/alcapone1933/ddns-ipv64
# tags: latest # tags: latest
auto_tag: true auto_tag: true
auto_tag_suffix: v0.0.2 auto_tag_suffix: v0.0.3
trigger: trigger:
branch: branch:

View File

@@ -4,7 +4,7 @@ LABEL maintainer="alcapone1933 <alcapone1933@cosanostra-cloud.de>" \
org.opencontainers.image.created="$(date +%Y-%m-%d\ %H:%M)" \ org.opencontainers.image.created="$(date +%Y-%m-%d\ %H:%M)" \
org.opencontainers.image.authors="alcapone1933 <alcapone1933@cosanostra-cloud.de>" \ org.opencontainers.image.authors="alcapone1933 <alcapone1933@cosanostra-cloud.de>" \
org.opencontainers.image.url="https://hub.docker.com/r/alcapone1933/drone-build-test" \ org.opencontainers.image.url="https://hub.docker.com/r/alcapone1933/drone-build-test" \
org.opencontainers.image.version="v.0.0.1" \ org.opencontainers.image.version="v0.0.3" \
org.opencontainers.image.ref.name="alcapone1933/ddns-ipv64" \ org.opencontainers.image.ref.name="alcapone1933/ddns-ipv64" \
org.opencontainers.image.title="DDNS Updater ipv64.net" \ org.opencontainers.image.title="DDNS Updater ipv64.net" \
org.opencontainers.image.description="Community DDNS Updater fuer ipv64.net" org.opencontainers.image.description="Community DDNS Updater fuer ipv64.net"
@@ -23,5 +23,5 @@ RUN mv /data/entrypoint.sh /usr/local/bin/entrypoint.sh && mv /data/cronjob /etc
# VOLUME [ "/data" ] # VOLUME [ "/data" ]
ENTRYPOINT ["/sbin/tini", "--", "/usr/local/bin/entrypoint.sh"] ENTRYPOINT ["/sbin/tini", "--", "/usr/local/bin/entrypoint.sh"]
HEALTHCHECK --interval=5s --timeout=30s --start-period=5s --retries=5 CMD curl -sSL --fail https://ipv64.net/ > /dev/null || exit 1 HEALTHCHECK --interval=5s --timeout=30s --start-period=5s --retries=3 CMD curl -sSL --fail https://ipv64.net/ > /dev/null || exit 1
# HEALTHCHECK --interval=5s --timeout=30s --start-period=5s --retries=2 CMD /usr/local/bin/healthcheck.sh # HEALTHCHECK --interval=5s --timeout=30s --start-period=5s --retries=2 CMD /usr/local/bin/healthcheck.sh

View File

@@ -1,3 +1,3 @@
# Cronjob DDNS Updater ipv64.net # Cronjob DDNS Updater ipv64.net
*/15 * * * * /bin/bash /data/ddns-update.sh >> /var/log/cron.log 2>&1 */15 * * * * /bin/bash /data/ddns-update.sh >> /var/log/cron.log 2>&1
00 06 * * * echo "`date +%Y-%m-%d\ %H:%M:%S` Deine DOMAIN ${DOMAIN_IPV64} HAT DIE IP=`dig +short ${DOMAIN_IPV64} A`" >> /var/log/cron.log 2>&1 */30 * * * * sleep 20 && echo "`date +%Y-%m-%d\ %H:%M:%S` Deine DOMAIN ${DOMAIN_IPV64} HAT DIE IP=`dig +short ${DOMAIN_IPV64} A @ns1.ipv64.net`" >> /var/log/cron.log 2>&1

View File

@@ -4,7 +4,7 @@ PFAD="/data"
IP=$(curl -4s https://ipv64.net/wieistmeineip.php | grep -o '[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}' | tail -n 1) IP=$(curl -4s https://ipv64.net/wieistmeineip.php | grep -o '[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}' | tail -n 1)
UPDIP=$(cat $PFAD/updip.txt) UPDIP=$(cat $PFAD/updip.txt)
sleep 2 sleep 1
if [ "$IP" == "$UPDIP" ]; then if [ "$IP" == "$UPDIP" ]; then
echo echo
@@ -12,9 +12,8 @@ if [ "$IP" == "$UPDIP" ]; then
echo echo
else else
echo echo
echo "$DATUM Update ..." echo "$DATUM UPDATE !!! ..."
sleep 1 echo "$DATUM UPDATE !!! - Update IP= $IP - Alte-IP: $UPDIP"
echo "$DATUM UPDATE!!! - Update IP= $IP - Alte-IP: $UPDIP"
sleep 1 sleep 1
echo "$IP" > $PFAD/updip.txt echo "$IP" > $PFAD/updip.txt
echo echo
@@ -22,3 +21,31 @@ else
# curl -4sSL https://ipv64.net/update.php?key=${DOMAIN_KEY}=${DOMAIN_IPV64}&ip=<ipaddr>&ip6=<ip6addr> # curl -4sSL https://ipv64.net/update.php?key=${DOMAIN_KEY}=${DOMAIN_IPV64}&ip=<ipaddr>&ip6=<ip6addr>
echo echo
fi fi
sleep 5
# Nachpruefung ob der DOMAIN Eintrag richtig gesetzt ist
function CHECK_A_DOMAIN() {
DATUM=$(date +%Y-%m-%d\ %H:%M:%S)
UPDIP=$(cat $PFAD/updip.txt)
IP=$(curl -4s https://ipv64.net/wieistmeineip.php | grep -o '[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}' | tail -n 1)
DOMAIN_CHECK=$(dig +short ${DOMAIN_IPV64} A @ns1.ipv64.net)
sleep 1
if [ "$IP" == "$DOMAIN_CHECK" ]; then
echo
echo "$DATUM CHECK - DOMAIN HAT DEN IP EINTRAG: `dig +noall +answer ${DOMAIN_IPV64} A @ns1.ipv64.net`"
echo
else
echo
echo "$DATUM UPDATE !!! ..."
echo "$DATUM UPDATE !!! - NACHEINTAG DIE IP WIRD NOCH EINMAL GESETZT"
echo "$DATUM UPDATE !!! - Update IP= $IP - Alte-IP: $UPDIP"
sleep 5
echo
curl -4sSL "https://ipv64.net/update.php?key=${DOMAIN_KEY}&domain=${DOMAIN_IPV64}&ip=${IP}"
# curl -4sSL https://ipv64.net/update.php?key=${DOMAIN_KEY}=${DOMAIN_IPV64}&ip=<ipaddr>&ip6=<ip6addr>
sleep 15
echo
echo "$DATUM NACHEINTAG - DOMAIN HAT DEN IP EINTRAG: `dig +noall +answer ${DOMAIN_IPV64} A @ns1.ipv64.net`"
echo
fi
}
CHECK_A_DOMAIN

View File

@@ -1,16 +1,16 @@
#!/usr/bin/env bash #!/usr/bin/env bash
# set -x # set -x
set -e set -e
sleep 15 sleep 10
echo "================================ START DDNS UPDATER IPV64.NET ================================" echo "================================ START DDNS UPDATER IPV64.NET ================================"
if [ -z "${DOMAIN_KEY:-}" ] ; then if [ -z "${DOMAIN_KEY:-}" ] ; then
echo echo
echo "Sie haben keinen DOMAIN Key gesetzt, schauen die unter https://ipv64.net/dyndns.php nach bei DynDNS Updatehash" echo "Sie haben keinen DOMAIN Key gesetzt, schauen die unter https://ipv64.net/dyndns.php nach bei DynDNS Updatehash"
echo echo
exit 1 exit 1
else else
echo echo
echo "Sie haben einen DOMAIN Key gesetzt" echo "Sie haben einen DOMAIN Key gesetzt"
echo echo
fi fi
@@ -30,20 +30,20 @@ fi
IP=$(curl -4s https://ipv64.net/wieistmeineip.php | grep -o '[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}' | tail -n 1) IP=$(curl -4s https://ipv64.net/wieistmeineip.php | grep -o '[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}' | tail -n 1)
# CHECK=$(curl -4sSL "https://ipv64.net/update.php?key=${DOMAIN_KEY}&domain=${DOMAIN_IPV64}&ip=$IP" | grep -o "success") # CHECK=$(curl -4sSL "https://ipv64.net/update.php?key=${DOMAIN_KEY}&domain=${DOMAIN_IPV64}&ip=$IP" | grep -o "success")
if [ "`curl -4sSL "https://ipv64.net/update.php?key=${DOMAIN_KEY}&domain=${DOMAIN_IPV64}&ip=$IP" | grep -o "success"`" = "success" ] ; then if [ "`curl -4sSL "https://ipv64.net/update.php?key=${DOMAIN_KEY}&domain=${DOMAIN_IPV64}&ip=${IP}" | grep -o "success"`" = "success" ] ; then
echo echo
echo "Die Angaben sind richtig gesetzt : DOMAIN und DOMAIN KEY" echo "Die Angaben sind richtig gesetzt: DOMAIN und DOMAIN KEY"
echo echo
else else
echo echo
echo "Die Angaben sind falsch gesetzt : DOMAIN oder DOMAIN KEY" echo "Die Angaben sind falsch gesetzt: DOMAIN oder DOMAIN KEY"
echo echo
exit 1 exit 1
fi fi
echo "$IP" > /data/updip.txt echo "${IP}" > /data/updip.txt
curl -sSL --fail https://ipv64.net/ > /dev/null || exit 1 curl -sSL --fail https://ipv64.net/ > /dev/null || exit 1
echo "${CRON_TIME} /bin/bash /data/ddns-update.sh >> /var/log/cron.log 2>&1" > /etc/cron.d/container_cronjob echo "${CRON_TIME} /bin/bash /data/ddns-update.sh >> /var/log/cron.log 2>&1" > /etc/cron.d/container_cronjob
echo "$CRON_TIME_DIG" 'echo "`date +%Y-%m-%d\ %H:%M:%S` Deine DOMAIN ${DOMAIN_IPV64} HAT DIE IP=`dig +short ${DOMAIN_IPV64} A`" >> /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` 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
sleep 2 sleep 2
@@ -51,4 +51,4 @@ sleep 2
/usr/sbin/crond /usr/sbin/crond
set tail -f /var/log/cron.log "$@" set tail -f /var/log/cron.log "$@"
exec "$@" exec "$@"

View File

@@ -4,6 +4,7 @@ services:
# build: # build:
# dockerfile: ./Dockerfile # dockerfile: ./Dockerfile
image: alcapone1933/ddns-ipv64:latest image: alcapone1933/ddns-ipv64:latest
# image: alcapone1933/ddns-ipv64:v0.0.3
container_name: ddns-ipv64 container_name: ddns-ipv64
restart: always restart: always
# volumes: # volumes: