Files
box.namecheapdns/README.md

1.5 KiB

Namecheap DDNS

Dynamic DNS updater for dotrepo.com running on box-stableapps (192.168.69.4). Two containers keep the root (@) and wildcard (*) A records pointing to the current public IP.

DNS Records Updated

Record Domain Container
@ (root) dotrepo.com ddns_dotrepo_at
* (wildcard) *.dotrepo.com ddns_dotrepo_wild

Credentials

What Value
NC_DOMAIN dotrepo.com
NC_PASS (DDNS password) f1e2a12848f24995918b84760fd02b41
Namecheap account clintmasden

The DDNS password is NOT the Namecheap account password. It's generated in Namecheap dashboard under Domain List > Advanced DNS > Dynamic DNS.

Server Details

Host 192.168.69.4 (box-stableapps)
Containers ddns_dotrepo_at, ddns_dotrepo_wild
Image linuxshots/namecheap-ddns
Ports None (outbound HTTP only)
Volumes None (stateless)
SSH ssh clint@192.168.69.4 (password: this-bo%-180391)

How It Works

Each container polls the Namecheap DDNS API to update its respective A record. The wildcard record (*) ensures all subdomains (audioevents.dotrepo.com, learnxiny.dotrepo.com, etc.) resolve to the public IP. Traefik then routes each subdomain to the correct container.

Deployment

ssh clint@192.168.69.4
cd /home/clint/containers/namecheap.dns
sudo docker compose up -d

Verify

# Check containers are running
docker ps --filter name=ddns

# Check DNS resolution
nslookup dotrepo.com
nslookup audioevents.dotrepo.com