Automatyczny klient DDNS aktualizujący rekordy DNS w Cloudflare na podstawie aktualnego adresu IP. Wysyła powiadomienia przez Telegram.
Automatic DDNS client that updates DNS records in Cloudflare based on your current IP address. Sends notifications via Telegram.
- Node.js (recommended: Bun)
- Cloudflare account with API Key/API Token
- Telegram bot and chat_id
- Docker (optional)
-
Sklonuj repozytorium / Clone the repository:
git clone https://github.com/Szymon3eK/cloudflareDDNS.git cd cloudflareDDNS -
Skonfiguruj plik
.env/ Configure the.envfile:TELEGRAM_CHAT_ID=your_chat_id TELEGRAM_BOT_TOKEN=your_bot_token CLOUDFLARE_EMAIL=your_email CLOUDFLARE_ZONE_ID=your_zone_id CLOUDFLARE_ACCOUNT_ID=your_account_id CLOUDFLARE_API_KEY=your_api_key CLOUDFLARE_API_TOKEN=your_token -
Dodaj plik
dns.jsonz listą nazw rekordów DNS do aktualizacji /
Add adns.jsonfile with a list of DNS record names to update, e.g.:[ "example.yourdomain.com", "another.yourdomain.com" ]
-
Zainstaluj zależności / Install dependencies:
bun install -
Uruchom aplikację / Run the app:
bun run index.ts
Możesz uruchomić projekt w kontenerze:
You can run the project in a container:
-
Zbuduj i uruchom / Build and run:
docker-compose up --build -
Upewnij się, że pliki
.envidns.jsonsą w katalogu głównym projektu.
Make sure.envanddns.jsonfiles are in the project root.
- Automatyczna aktualizacja rekordów DNS w Cloudflare co minutę
Automatic DNS record update in Cloudflare every minute - Powiadomienia o zmianach przez Telegram
Telegram notifications about changes - Obsługa wielu rekordów DNS
Supports multiple DNS records
- Wszystkie dane konfiguracyjne pobierane są z pliku
.env
All configuration is loaded from the.envfile - Rekordy DNS do aktualizacji definiujesz w
dns.json
DNS records to update are defined indns.json
MIT