This commit is contained in:
alcapone1933
2022-10-28 18:50:16 +02:00
parent 63d3256520
commit c41ac8d94b
7 changed files with 139 additions and 0 deletions

3
data/cronjob Normal file
View File

@@ -0,0 +1,3 @@
# Cronjob DDNS Updater ipv64.net
*/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

24
data/ddns-update.sh Normal file
View File

@@ -0,0 +1,24 @@
#!/usr/bin/env bash
DATUM=$(date +%Y-%m-%d\ %H:%M:%S)
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)
UPDIP=$(cat $PFAD/updip.txt)
sleep 2
if [ "$IP" == "$UPDIP" ]; then
echo
echo "$DATUM KEIN UPDATE - Aktuelle IP=$UPDIP"
echo
else
echo
echo "$DATUM Update ..."
sleep 1
echo "$DATUM UPDATE!!! - Update IP= $IP - Alte-IP: $UPDIP"
sleep 1
echo "$IP" > $PFAD/updip.txt
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>
echo
fi

40
data/entrypoint.sh Normal file
View File

@@ -0,0 +1,40 @@
#!/usr/bin/env bash
# set -x
set -e
sleep 15
echo "================================ START DDNS UPDATER IPV64.NET ================================"
if [ -z "${DOMAIN_KEY:-}" ] ; then
echo
echo "Sie haben keinen DOMAIN Key gesetzt, schauen die unter https://ipv64.net/dyndns.php nach bei DynDNS Updatehash"
echo
exit 1
else
echo
echo "Sie haben einen DOMAIN Key gesetzt"
echo
fi
if [ -z "${DOMAIN_IPV64:-}" ] ; then
echo
echo "Sie haben keine DOMAIN gesetzt, schauen die unter https://ipv64.net/dyndns.php nach bei Domain"
echo
exit 1
else
echo
echo "Sie haben eine DOMAIN gesetzt"
echo
echo "Deine DOMAIN $DOMAIN_IPV64"
fi
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_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
sleep 2
/usr/bin/crontab /etc/cron.d/container_cronjob
/usr/sbin/crond
set tail -f /var/log/cron.log "$@"
exec "$@"

23
data/healthcheck.sh Normal file
View File

@@ -0,0 +1,23 @@
#!/usr/bin/env bash
set -e
if [ -z "${DOMAIN_KEY:-}" ] ; then
echo
echo "Sie haben keinen DOMAIN Key gesetzt, schauen die unter https://ipv64.net/dyndns.php nach bei DynDNS Updatehash"
echo
exit 1
else
echo
echo "Sie haben einen DOMAIN Key gesetzt"
echo
fi
if [ -z "${DOMAIN_IPV64:-}" ] ; then
echo
echo "Sie haben keine DOMAIN gesetzt, schauen die unter https://ipv64.net/dyndns.php nach bei Domain"
echo
exit 1
else
echo
echo "Sie haben einen DOMAIN gesetzt"
echo
fi
curl -sSL --fail https://ipv64.net/ > /dev/null || exit 1

1
data/updip.txt Normal file
View File

@@ -0,0 +1 @@
1.1.1.1