前言

在之前的文章中我们部署了容器epicgames-claimer来自动领取epic游戏,但是由于那个容器没有办法通过谷歌的ReCAPTCHA验证所以领取的成功率不高,加上该容器的作者删库跑路。我们不得不寻找一个新的容器来帮我们自动领取epic游戏。

在docker hub闲逛时我发现了charlocharlie/epicgames-freegames这个容器,在阅读说明后发现这个容器可以在登录epic以及领取游戏触发ReCAPTCHA时通过smtp等方式通知用户,然后经过网页手动完成验证,这样一来我们领取游戏的成功率就大大提高了。

那么废话不多说我们就来部署吧。

准备

服务器安装宝塔面板、docker以及nginx。

将一个域名解析到服务器ip。

在宝塔上安装docker管理器。

当然如果你能手动安装docker并对nginx反向代理的配置比较熟悉的话那就可以不安装面板。

部署

拉取容器

SSH登陆服务器输入以下命令拉取容器镜像

docker pull charlocharlie/epicgames-freegames

新建并编辑配置文件

在服务器任意目录下新建config.josn文件,将下面的模板粘贴到文件中并进行修改。

{
  "runOnStartup": true,
  "cronSchedule": "5 2 * * *",
  "logLevel": "info",
  "webPortalConfig": {
    "baseUrl": "https://epic.xxx.com"
  },
  "accounts": [
    {
      "email": "abcdefg",
      "password": "abc123",
 "totp": "EMNCF83ULU3K3PXPJBSWY3DPEHPK3PXPJWY3DPEHPK3YI69R39NE"
    }
  ],
   "notifiers": [
     {
       "type": "email",
       "smtpHost": "smtp.mail.com",
       "smtpPort": 465,
       "emailSenderAddress": "xxx@email,com",
       "emailSenderName": "Epic Game verify ",
       "emailRecipientAddress": "xxx@email.com",
       "secure": true,
       "auth": {
           "user": "xxx@email.com",
           "pass": "abcd1234"
       }
     }
       ]
}

我们先来观察一下配置文件并按照实际情况进行修改。

第一行是开机启动默认不用修改。

第二行为任务运行时间由于我们没有标明zone这里的时间是标准时间,跟国内有8小时的时差,想要什么时间运行自己推算就好。

第六行的baseurl为触发ReCAPTCHA验证我们手动验证访问的网址将刚刚准备时解析的域名填入即可。

第十行、十一行、十二行为你的epic账号密码以及TOTP验证器代码,如果你没有开启两步验证的话可以把十二行去掉,记得要将十一行最后的逗号也删了。

第十五行下面的就是通知选项了,根据自己使用的邮箱配置好smtp服务器和邮箱账号密码就行(有的邮箱的密码为用户授权码请留意。)

当然你也可以根据官方文档自行增加notifiers的推送方式,这里我们就默认使用SMTP。

设置反向代理

宝塔面板新建一个站点,配置好SSL。然后配置它的反向代理。将网页设置一个3000端口的反向代理即可。(根据下面运行容器实际端口填写)

设置反向代理

由于用到了wss我们要修改一下反向代理的配置文件

点击修改配置

将下面框框中改为下面的内容即可

 proxy_set_header Host $host;
 proxy_set_header X-Real_IP $remote_addr;
 proxy_set_header X-Forwarded-For $remote_addr:$remote_port;
 proxy_http_version 1.1;
 proxy_set_header Upgrade $http_upgrade;
 proxy_set_header Connection upgrade;

运行容器

在填写完配置后并设置好反向代理后我们就可以用下面的命令运行容器了。

docker run -d -v /my/host/dir/:/usr/app/config:rw -p 3000:3000 -m 2g charlocharlie/epicgames-freegames:latest

注意这里的 /my/host/dir/为你config.json文件的目录,3000端口为你网页验证ReCAPTCHA的端口跟反向代理相同即可。

效果

如果一切无误的话容器就开始运行了,这时留意一下我们的邮箱。触发ReCAPTCHA验证后我们就会收到这样的邮件。

点击邮件中的链接即可验证ReCAPTCHA

在浏览器中手动验证即可

验证完毕后领取会自动进行。直接关闭浏览器即可。

在完成一次验证后容器会在服务器中留下cookies文件,不出意外的话我们以后是不需要多次手动点击ReCAPTCHA验证的。

领取成功

最后修改:2022 年 08 月 11 日
如果觉得我的文章对你有用,请随意赞赏