VPS/云主机等
优惠信息分享

宝塔面板docker安装next-freenom-为freenom免费域名自动续期

使用脚本来自动续期freenom免费域名还是很有必要的,很多童鞋都有几十个免费域名,手动续期真是个体力活。之前的教程因为作者提供的git actions方式导致仓库被封,所以这个方式已经不能使用,好在作者更新了docker,目前我们可以使用docker来部署这个脚本。

这篇文章就来说说如何用docker的方式来为freenom免费域名自动续期,教程还是基于宝塔(宝塔服务器面板,送你3188元礼包,点我领取https://www.bt.cn/?invite_code=MV9ub2NxdmI=

宝塔面板docker安装next-freenom-为freenom免费域名自动续期插图

1、简介

项目:https://github.com/luolongfei/next-freenom

docker:https://hub.docker.com/r/luolongfei/freenom

2、准备

1)准备一台vps(本教程搭建于racknerd:https://www.daniao.org/14561.html

2)宝塔面板

3)安装好docker管理器

4)配置发信邮箱,这里以qq邮箱为例,按图设置,点击开启POP3/SMTP服务后,QQ邮箱会要求你用手机发送一条短信给腾讯!之后点击我也发送即可得到授权码。

宝塔面板docker安装next-freenom-为freenom免费域名自动续期插图1

宝塔面板docker安装next-freenom-为freenom免费域名自动续期插图2

得到授权码后,复制好备用!

3、部署

1)使用ssh软件链接到你的服务器,在命令行使用如下命令:

docker run -d --name freenom --restart always -v $(pwd):/conf -v $(pwd)/logs:/app/logs luolongfei/freenom

2)或者,如果你想自定义脚本执行时间,则命令如下

docker run -d --name freenom --restart always -v $(pwd):/conf -v $(pwd)/logs:/app/logs -e RUN_AT="11:24" luolongfei/freenom

3)上面这条命令只比上上条命令多了个 -e RUN_AT="11:24",其中11:24表示在北京时间每天的 11:24 执行续期任务,你可以自定义这个时间。 这里的RUN_AT参数同时也支持 CRON 命令里的时间形式,比如, -e RUN_AT="9 11 * * *",表示每天北京时间 11:09 执行续期任务, 如果你不想每天执行任务,只想隔几天执行,只用修改RUN_AT的值即可。

注意:不推荐自定义脚本执行时间。因为你可能跟很多人定义的是同一个时间点,这样可能导致所有人都是同一时间向 Freenom 的服务器发起请求, 使得 Freenom 无法稳定提供服务。而如果你不自定义时间,程序会自动指定北京时间 06 ~ 23 点全时段随机的一个时间点作为执行时间, 每次重启容器都会自动重新指定。

4)至此,你的自动续期容器就跑起来了,执行ls -a后你就可以看到在你的当前目录下,有一个.env文件和一个logs目录,logs目录里面存放的是程序日志, 而.env则是配置文件,现在直接执行vim .env.env文件里的所有配置项改为你自己的并保存即可。然后重启容器,如果配置正确的话,便很快可以收到相关邮件。

5)如何验证你的配置是否正确呢?

修改并保存.env文件后,执行docker restart freenom重启容器,等待 5 秒钟左右,然后执行docker logs freenom查看输出内容, 观察输出内容中有执行成功字样,则表示配置无误。如果你还来不及配置送信邮箱等内容,可先停用邮件功能。

6)修改.env文件,具体如下:修改后,参考:【5)如何验证你的配置是否正确呢?】部署

[reply]

###################################################################### 注意事项## - 环境变量的格式为“键=值”,顶格写,注意等号两边不能有空格,值可以用单引号或者双引号引起来,不引也行(下面的特殊情况必须引起来)# - 因为环境变量中“#”代表注释,若密码中存在“#”字符的,一定要使用单引号将整个密码引起来,否则解析会在“#”字符前截止,如果密码中存在单双引号的,#    需要在单双引号前加“\”转义# - 配置多账户不可省略单引号,且多个账户和密码的格式必须是“<账户1>@<密码1>|<账户2>@<密码2>|<账户3>@<密码3>”,不要有空格,就算有程序也会给你干掉#    e.g. MULTIPLE_ACCOUNTS='<账户1>@<密码1>|<账户2>@<密码2>|<账户3>@<密码3>'#    注意不要省略“<>”符号,否则无法正确匹配# - 若你只有单个账户,只配置FREENOM_USERNAME和FREENOM_PASSWORD就够了# - 单账户和多账户的配置会被合并在一起读取并去重###########################################################################################  账户配置 Account config  ########################## Freenom账户 Freenom [email protected]# Freenom密码 Freenom passwordFREENOM_PASSWORD='daniaoorg'# 多账户支持 Support for multiple accountsMULTIPLE_ACCOUNTS=''######################  end 账户配置  ###############################################  通知邮件配置 Email config  ########################## 机器人邮箱账户 Email of [email protected]# 机器人邮箱密码(Gmail填密码,QQ邮箱或163邮箱填授权码) Password of the robot emailMAIL_PASSWORD='ljflasjflsfsfsfsfsaf'# 用于接收通知的邮箱 Email address used to receive notificationsTO='[email protected]'# 是否启用邮件推送功能 true:启用 false:不启用 Whether to enable email push features true: enabled false: not enabledMAIL_ENABLE=true######################  end 通知邮件配置  ###############################################  Telegram bot  ########################## 可选配置,通过 Telegram bot 发送通知消息 This is an optional configuration to send notification messages via Telegram bot# 你的chat_id,通过发送“/start”给@userinfobot可以获取自己的id Your chat_id, you can get your own id by sending "/start" to @userinfobotTELEGRAM_CHAT_ID='123'# 你的Telegram bot的token Token for your Telegram botTELEGRAM_BOT_TOKEN='9190:AAHggsghdgdgsdg'# 是否启用 Telegram Bot 功能 true:启用 false:不启用 Whether to enable Telegram Bot features true: enabled false: not enabledTELEGRAM_BOT_ENABLE=false######################  end Telegram bot  ########################## 通知频率 0:仅当有续期操作的时候 1:每次执行 Notification frequency 0: Only when there is a renewal operation 1: Each executionNOTICE_FREQ=1# 在 Github Actions 上运行 Run on github actionsON_GITHUB_ACTIONS=false# 是否验证服务器证书 Whether to verify server certificateVERIFY_SSL=false# 是否开启 Debug 模式 Whether to enable debug modeDEBUG=false

[/reply]

4、效果

效果如下,当然你也可以使用tg来推送消息,在env都有详细介绍!

宝塔面板docker安装next-freenom-为freenom免费域名自动续期插图3

5、最后

如果你不想每次执行都收到推送,请将 .env 中 NOTICE_FREQ 的值设为0,使程序只在有续期操作时才推送,其他的也没啥好说的,有需要的童鞋可以折腾起来啦。

之前的文章参考:https://www.daniao.org/9787.html

赞(0)
未经允许不得转载:遗弃你|YIQINI.COM » 宝塔面板docker安装next-freenom-为freenom免费域名自动续期

评论 抢沙发

评论前必须登录!

 

登录

找回密码

注册