nas部署docker笔记 docker freenas_Docker

前言:

可以實現這功能,非常感謝原作者luolongfei的無私貢獻。

往時我也是在Github Actions實現自動續期freenom域名,但不知名原因已經不能使用了。

所以luolongfei大佬也遷移了倉庫,根據最新的倉庫原碼實現了在VPS部署Docker實現自動續期freenom域名功能及這篇貼文分享做記錄。

限制條件:

  • VPS或者可以實現Docker功能的電腦
  • freenom域名的登入名稱及密碼
  • 發信及收信郵箱
  • Telegram bot發送通知 (可選)

部署:

事前在VPS上已安裝了DockerDoker-Compose

在這範例中是以Doker-Compose形式建立容器

VPS建立freenom目錄及進入

mkdir freenom && cd freenom

新建docker-compose.yml文件

cat > 'docker-compose.yml' <<EOF
version: "3"
services:
  freenom:
    image: luolongfei/freenom
    container_name: freenom
    restart: always
#    environment:
#      - RUN_AT="9 11 * * *"
    volumes:
      - $PWD:/conf
      - $PWD/logs:/app/logs
EOF

ENTER完成文件的建立

- RUN_AT="9 11 * * *"CRON 命令形式執行任務,如有需要可去掉注釋# (作者不建議,因為每次重啟容器都會隨機一個時間點,從而保障服務的穩定。)

$PWD 為當前目錄

docker-compose.yml 創建並啟動容器

nas部署docker笔记 docker freenas_运维_02

docker-compose up -d

容器建立後,需要修改 .env 參數才能執行通知服務

  • freenom域名的登入名稱及密碼
  • 郵箱的發信及收信 (以163郵箱為範例)

nas部署docker笔记 docker freenas_Docker_03

登入到mail.163.com 穫取 授權密碼

返回VPS,建立環境變量

DOMAIN_ACC=freenom@gmail.com; DOMAIN_PW=\'freenomPasswd\'; EMAIL_ACC=freenom@163.com; EMAIL_PW=\'emailPasswd\'; EMAIL_REC=\'freenom@163.com\'

資訊如下:

變量

例(需要自行更改)

解釋

DOMAIN_ACC

freenom@gmail.com

FREENOM賬戶

DOMAIN_PW

freenomPasswd

FREENOM密碼

EMAIL_ACC

freenom@163.com

郵箱賬戶

EMAIL_PW

emailPasswd

郵箱密碼(授權密碼)

EMAIL_REC

freenom@163.com

接收通知的郵箱

修改 .env 參數

sed -i -e "s/FREENOM_USERNAME=593198779@qq.com/FREENOM_USERNAME=$DOMAIN_ACC/g" -e "s/FREENOM_PASSWORD=''/FREENOM_PASSWORD=$DOMAIN_PW/g" -e "s/MAIL_USERNAME=llf.push@gmail.com/MAIL_USERNAME=$EMAIL_ACC/g" -e "s/MAIL_PASSWORD=''/MAIL_PASSWORD=$EMAIL_PW/g" -e "s/TO=''/TO=$EMAIL_REC/g" .env

查看更新後的參數

head -n 37 .env

nas部署docker笔记 docker freenas_运维_04

重新啟動容器

docker-compose restart

檢視容器日誌

docker-compose logs

nas部署docker笔记 docker freenas_运维_05

重新登入到mail.163.com ,可以查看到新郵件

nas部署docker笔记 docker freenas_Docker_06

通過 Telegram bot 發送通知消息(可選)

由於需要有訪問404區連線,固沒有這次的分享。

有這方面需求的伙伴可參考如何通過電報機器人給自己或群組發消息 - 知乎 (zhihu.com)

nas部署docker笔记 docker freenas_nas部署docker笔记_07

結語:

當你在不同時段申請了有多個或一堆域名,每次到期前14天都需要登入到Freenom網頁續期,但這樣的操作好容易有甩漏而且很不便。但有了luolongfei大佬的Docker倉庫,大大簡化了部署難度,域名期滿前透過Docker自動續期,而且支持多種平台部署(如: arm/x86等)。

參考資料: