This is a small alpine based nodejs container which will gather your public IP from a cloud service. This is used to update a DNS record via Hetzner DNS API to point to your public IP.
As this Docker Image is primary used on my Raspberries, the base image is arm32v7/node:lts-alpine3.10
.
docker pull smhagit/homeip
This image is built with GitHub Actions via self-hosted runner on an arm64 Raspberry Pi.
Attention: This only works with Hetzner DNS API.
docker-compose.yml
version: "3.9"
services:
app:
image: smhagit/homeip
environment:
HETZNER_ZONE_ID: xxx
HETZNER_API_TOKEN: xxx
INTERVAL: 5400
# specify a single record
HETZNER_RECORD_ID: xxx
HETZNER_RECORD_NAME: home # xxx.domain.tld
# specify multiple records
HETZNER_RECORD_ID_1: xxx
HETZNER_RECORD_NAME_1: home # xxx.domain.tld
HETZNER_RECORD_ID_2: xxx
HETZNER_RECORD_NAME_2: another # another.domain.tld
# ...