在 DSM 中自動更新 CloudFlare DNS 記錄(Docker版)

上次有介紹過如何在 DSM 更新 CloudFlare DNS 記錄,不過上次那篇操作複雜繁瑣

還要 SSH 進去 DSM 下指令操作,很多人看到指令就嚇尿了,所以另外找了簡易 Docker 版本

這個 Docker 版本是同一個作者寫的,Docker 映像檔大小居然只有小小的 3MB ,精簡到不行!

如果你的 DSM 可以安裝 Docker ,強烈推薦安裝這個版本~

 

同樣教學過很多次的,打開 DSM Docker 的倉庫伺服器,搜索「cloudflare-ddns」關鍵詞

會出現很多,往下找一點然後看到「joshuaavalon/cloudflare-ddns」,直接下載

/media/2017/10/snipaste_20171024_181012.png

 

下載之後就直接部署,「進階設定」頁面裡面的自動重啟記得打勾,這樣機器重啟或者當機時候這個容器會自動啟動

直接跳到「環境設定」頁面,添加以下幾個變數

ZONE=example.com

HOST=example.com

以上兩個填寫準備在 CloudFlare 更新的域名,HOST 也可以寫 sub.example.com ,類似這樣的子域名

 

[email protected]

填寫你在 CloudFlare 註冊的 email

 

API=1111111111111111

這個填寫你的 CloudFlare Global API Key ,這個可以在 CloudFlare Profile 頁面獲取

 

TTL=1

這個設定成 1 的話就是自動

 

PROXY=true

這個選項可以設定要不要透過 CloudFlare 獲取安全與效能,不要的話可以設定為「false」

 

弄完以後就會像下圖一樣

/media/2017/10/snipaste_20171024_160743.png

 

以上是全部設定內容,接著全部按「確定」或者「下一步」,容器就會啟動

啟動後我們在該容器的「詳細資訊」裡面就能看到是不是正常啟動

觀察一下 log 可以看見,它每五分鐘會檢查一次外部 IP

/media/2017/10/snipaste_20171024_160743-1.png

 

作者說他這個映像檔對比 nouchka/cloudflare-dyndns(4.0)有以下三個優勢

  • 映像檔超小,只有 3MB
  • 可以更新 subdomain
  • 只在外部 IP 變動的時候才會去跟 CloudFlare 要求更新