https://github.com/thomascardin/ddns
Managed Cloudflare A record based on No-IP hostname IP.
https://github.com/thomascardin/ddns
cloudflare ddns go noip
Last synced: 4 months ago
JSON representation
Managed Cloudflare A record based on No-IP hostname IP.
- Host: GitHub
- URL: https://github.com/thomascardin/ddns
- Owner: ThomasCardin
- License: gpl-3.0
- Created: 2024-02-28T13:46:43.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2024-12-24T16:17:24.000Z (about 1 year ago)
- Last Synced: 2025-09-07T08:03:03.288Z (4 months ago)
- Topics: cloudflare, ddns, go, noip
- Language: Go
- Homepage:
- Size: 30.3 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# ddns
Managed Cloudflare A record based on No-IP hostname IP.
## Environment variables
- `NOIP_HOSTNAME`: The hostname or domain name associated with the NOIP service
- `CLOUDFLARE_API_KEY`: An authentication key used to access the Cloudflare API for performing various operations
- `CLOUDFLARE_A_RECORD`: A specific type of DNS record (Address Record) in the Cloudflare DNS settings, typically used to map domain names to IPv4 addresses
- `CLOUDFLARE_ZONE_ID`: The unique identifier associated with a domain's zone in Cloudflare's system. It's used to specify which zone the DNS record belongs to
## Test
Building the image with your arguments:
```bash
docker build --build-arg ARG_NOIP_HOSTNAME= \
--build-arg ARG_CLOUDFLARE_EMAIL= \
--build-arg ARG_CLOUDFLARE_API_KEY= \
--build-arg ARG_CLOUDFLARE_A_RECORD_NAME= \
--build-arg ARG_CLOUDFLARE_ZONE_ID= \
-t ddns --no-cache .
```
```bash
docker run ddns
```
Pass your environment variables after the build
```bash
docker build -t ddns .
```
```bash
docker run ddns \
-e NOIP_HOSTNAME= \
-e CLOUDFLARE_EMAIL= \
-e CLOUDFLARE_API_KEY= \
-e CLOUDFLARE_A_RECORD_NAME= \
-e CLOUDFLARE_ZONE_ID= \
```
## Dependencies
- [Logrus](https://github.com/sirupsen/logrus)
- [cloudflare-go](https://github.com/cloudflare/cloudflare-go)