使用 duckdns 轉發自建的靜態網頁伺服器
接續上一篇 CHG: 在 ubuntu 使用 docker 架設 nginx 靜態網站伺服器
已經架設好靜態網站伺服器,並且可用外部IP瀏覽網站了,這邊要去註冊一個域名來轉發自己的IP,這樣就可以不用記住數字而是記住一個域名
域名這裡用免費的方案 duckdns 服務,如果是華碩的機器內部其實也有ddns可以註冊,這是一樣的意思,只不過這裡用 duckdns 來實現
註冊 duckddns
進入該網站 https://www.duckdns.org/
選一個第三方帳號註冊,然後就可以登錄自己想要的域名了
這邊先不用考慮動態IP的問題,跑起來之後再處理就好,先直接從網站註冊能用就好
註冊好之後用下面的指令,看看剛剛註冊的網域有沒有返回你自己的IP
nslookup chgsite.duckdns.org
確認有返回正確的 IP 就是可以用了
即使 nslookup 可以查到,瀏覽器也有可能要等一段時間才能用,仍然不行的話重啟一下電腦試試看
再來就可以用該網域 http://chgsite.duckdns.org 從公網存取你的靜態網站了
確認的時候記得用手機網路試試看,不然在同一個 wifi 下路由會直接走內網,無法真的測試到外部是否能存取
再來下一篇是將他變成 https 以及處理掉結尾的 8081 直接用域名存取的教學
CHG: 使用 npm 反向代理內部 nginx 的靜態網站為 https
動態更新 duckddns
簡單說就是定期執行指令上傳IP到 duckdns 上,這樣就能處理動態IP的變動了,即使變動後依然能在第一時間更改IP位址
執行下面的指令創建一個 duckdns 這預設每5分鐘會自動更新一次
裡面的 Token 從 http://chgsite.duckdns.org 登入後會看到,網域記得要先註冊才有效
docker run -d \
--name=duckdns \
--net=host \
-e PUID=1000 \
-e PGID=1000 \
-e TZ=Asia/Taipei \
-e SUBDOMAINS=<你的子網域名稱>\
-e TOKEN=<你的Token> \
-e UPDATE_IP=ipv4 \
-e LOG_FILE=false \
-v /srv/duckdns/config:/config \
--restart unless-stopped \
lscr.io/linuxserver/duckdns:latest
完成之後等個10秒再執行下面指令
docker logs duckdnsd
看一下倒數第三行,成功的話會是
DuckDNS request at Fri Aug 15 17:51:15 CST 2025 successful. IP(s) unchanged.
失敗的話會看到 KO
沒有留言:
張貼留言