如何使用 Docker 安装独角数卡 USDT 支付插件Epusdt(非独立部署)

使用 Docker 安装独角数卡的 USDT 支付插件Epusdt非常简单。只需在已有的 Docker 环境中,获取必要的 Epusdt 插件文件,并按以下步骤进行配置:

Docker快速搭建 独角数卡 自动售货系统

准备环境:

  • 本教程选择直接安装在独角数卡的服务器上,上一节已经安装好了 redis,mysql,dujiaoka,这里选择已有的 redis和 mysql安装Epusdt,如果你尚未部署独角数卡系统,可以参考我的 Docker 快速部署独角数卡教程,完成独角数卡的安装。
  • Telegram Bot 主要用于获取通知以及管理 usdt 收款码,申请步骤非常简单,具体申请过程请看我这篇教程申请Bot API TokenToken,成功申请到 Telegram Bot 后将会获得类似33333333:adfssdfggssddg-gsdfwet的 token,以及你个人 Telegram 账号的 ID.

下载Epusdt 插件所需的文件

cd /usr/local/data
mkdir epusdt && cd epusdt
wget https://raw.githubusercontent.com/stilleshan/dockerfiles/main/epusdt/docker-compose.yml
wget https://raw.githubusercontent.com/stilleshan/dockerfiles/main/epusdt/epusdt.conf
wget https://raw.githubusercontent.com/stilleshan/dockerfiles/main/epusdt/epusdt.sql

修改 Docker Compose 配置文件

如果你上一篇部署独角卡时采用了我提供的 docker-compose.yaml内容,这里直接用下面内容

但有2 处需要修改:

  • MYSQL_USER我修改为dujiaoka
  • MYSQL_PASSWORD修改为部署独角卡时设置的dujiaoka用户的密码,可查看dujiaoka/docker-compose.yml文件
version: "3"
services:
  epusdt:
    image: stilleshan/epusdt
    restart: always
    volumes:
      - ./epusdt.conf:/app/.env
    ports:
      - 8000:8000
    environment:
      - MYSQL_HOST=db
      - MYSQL_DATABASE=epusdt
      - MYSQL_USER=dujiaoka
      - MYSQL_PASSWORD=YOU-PASSWORD
      - REDIS_HOST=redis
    networks:
      - dujiaoshou_shared_network

networks:
  dujiaoshou_shared_network:
    name: dujiaoshou_shared_network
    external: true

初始化数据库

1、进入 mysql容器

docker exec -it dujiaoka-db-1 /bin/bash

2、连接 mysql

mysql -u root -p #回车后输入 root用户密码,再次回车就连上了 #root密码查看dujiaoka/docker-compose.yml文件

3、创建epusdt数据库

CREATE DATABASE `epusdt` /*!40100 DEFAULT CHARACTER SET utf8mb4 */

4、授权epusdt数据库给dujiaoka用户

use mysql
GRANT ALL PRIVILEGES ON `epusdt`.* TO `dujiaoka`@`%`  identified by "YOU-PASSWORD" #YOU-PASSWORD修改为你的dujiaoka用户的密码
flush privileges; #刷新授权

然后输入 exit 退出 mysql,再输入 exit退出 db容器

5、初始化数据库

docker exec -i dujiaoka-db-1 sh -c 'exec mysql -udujiaoka -pYOUR_PASSWORD epusdt' < epusdt.sql #将YOUR_PASSWORD给为dujiaoka用户的密码

将命令中的-pYOUR_PASSWORD的密码改为dujiaoka用户的密码,注意需要保留前缀-p,例如上文修改密码MYSQL_PASSWORD=442dsgssd,此处则为-p442dsgssd.

6、修改epusdt.conf配置

  • 修改第 3 行app_uri为上文为epusdt准备的独立域名
  • 修改第 24 行mysql_passwd为上节MYSQL_PASSWORD的dujiaoka用户密码(注意:非 root 密码)
  • 修改第 55 行api_auth_token= 创建一个密码用于dujiaoka 支付设置中使用.
  • 注意:因为本项目是合并部署,即跟 dujiaoka使用相同的 mysql和 redis,所以第 21,33 行已经修改为db,redis,不能使用 127.0.0.1。networks配置起了关键作用
  • 修改第 48 行tg_bot_token=为上文创建的 Telegram Bot 的Token
  • 修改第 52 行tg_manage=为上文创建的 Telegram Bot 的ID

其他参数保持默认即可

7、epusdt.sql

这个文件为数据库初始化文件,请勿修改它.

8、运行容器

#启动容器
docker-compose up -d
#查看usdt容器日志
docker-compose logs 
#停止容器
docker-compose down
#重启容器
docker-compose up -d
#或
docker-compose restart

Docker 安装独角数卡 USDT 支付插件Epusdt

日志显示epusdt-1 | ⇨ http server started on [::]:8000,说明没啥问题,可以下一步配置域名了

nginx新增域名配置

在/etc/nginx/conf.d目录下新增域名,例如 usdt.zhpengfei.com.conf

server{
	listen 80;
	server_name your-domain.com;
	return 301 https://your-domain.com$request_uri;
}

server{
	listen 443 ssl http2;
	server_name your-domain.com;


	access_log logs/access_epusdt.log;
	error_log logs/error_epusdt.log;
	index index.html index.html index.php default.htm default.php;
	ssl_certificate   cert/dujiaoka.pem;
 	ssl_certificate_key  cert/dujiaoka.key;
	ssl_session_timeout 10m;
 	ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
 	ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
 	ssl_prefer_server_ciphers on;

	location ^~ / {
        proxy_pass http://127.0.0.1:8000;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header REMOTE-HOST $remote_addr;
        proxy_set_header X-Forwarded-Proto  $scheme;
        }


}

保存之后使用下面命令一键替换掉配置文件中的域名,https证书不变

sed -i 's/your-domain.com/usdt.zhpengfei.com/g' usdt.zhpengfei.com.conf #将usdt.zhpengfei.com替换成你的域名

重新加载 nginx配置,使usdt域名生效

/etc/init.d/nginx configtest 测试配置文件是否有错误
/etc/init.d/nginx reload #重新加载配置

在 cloudflare dns中添加解析后,访问域名显示hello epusdt, https://github.com/assimon/epusdt表示成功了。

配置usdt支付 – dujiaoka

1、登录 dujiaoka 后台 – 配置 – 支付配置,最下面开启epusdt,并点击编辑

2、修改参数

  • 商户ID修改为上述epusdt.conf配置文件中的api_auth_token的值
  • 商户密钥填写API地址https://你的usdt域名/api/v1/order/create-transaction

其他值保存不变,保存即可。

Docker 安装独角数卡 USDT 支付插件Epusdt

3、设置 usdt 收款地址

最后新建的在 Telegram Bot 里发送你的usdt trc20的收款地址即可

Docker 安装独角数卡 USDT 支付插件Epusdt

此时则完成了所有部署。

测试USDT支付

可以在商铺管理->商品列表中,新增一个测试商品,进行支付测试即可。如下图所示,则表示 usdt支付正常。

Docker 安装独角数卡 USDT 支付插件Epusdt

结语

本教程采用 docker安装Epusdt插件,由于跟独角卡部署在同一个docker中,故而整个环境采用一个 mysql和 redis容器,共享网络环境,减少了对系统内存的占用,所以前期流量较低,完全够用,后期直接升级机器配置即可,但对数据库还是做了分库,也是方便备份迁移的,如果要采用独立部署,配置那就跟官方的一样

Comments

No comments yet. Why don’t you start the discussion?

发表评论