Skip to content
This repository has been archived by the owner on Aug 24, 2024. It is now read-only.

BennettChina/docker-qsign

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Docker-Qsign

ci status jdk version docker image version docker image size docker pulls

本项目是 unidbg-fetch-qsign 的 Docker 镜像源码,基于 Alpine 系统编译。

默认使用的是项目中的 8.9.63 版本 .so 资源,可以通过挂载文件替换 。

配置文件

1.1.1 开始,引入了 config.json 配置文件,此前的 ANDROID_IDDYNAMIC 等环境变量参数将在此配置文件中进行调整,以及引入白名单 QQ 号规则,若未配置该规则将不会响应任何 QQ 号的请求。

{ // 复制这里的话,请把注释删除
  "server": {
    "host": "0.0.0.0",
    "port": 80 //端口不建议改,容器默认用 80 最舒服,如果改则需要暴露端口时的容器内端口与此一致。
  },
  // 注册实例的密钥
  "key": "114514",
  // 启用自动注册实例(需要1.1.4及以上版本才会生效,8.9.68可开启)
  "auto_register": true,
  "protocol": {
    "qua": "V1_AND_SQ_8.9.68_4218_HDBM_T",
    // version和code可以从qua中提取
    "version": "8.9.68", 
    "code": "4218"
  },
  "unidbg": {
    // 启用Dynarmic,它是一个开源的动态ARM指令集模拟器
    // 有时候会出现https://github.com/fuqiuluo/unidbg-fetch-qsign/issues/52
    "dynarmic": false,
    "unicorn": true,
    "debug": false
  },
  // 黑名单的uin,禁止以下uin注册实例,自qsign-1.1.6版本启用...
  "black_list": [
    1008611
  ]
}

快速开始

首先把需要挂载的内容复制到宿主机,避免因为宿主机文件夹空的导致挂载后覆盖容器内的文件夹内容。

docker run -d --rm --name tmp_cont bennettwu/qsign-server:1.1.9 sh -c 'sleep 10'  && docker cp tmp_cont:/app/txlib "$(pwd)/"

之后需要修改 txlib/config.json 文件中的参数,修改后用挂载方式启动。

docker run -d \
--name qsign-server \
--restart always \
-p 8080:80 \
-v $(pwd)/txlib/:/app/txlib \
bennettwu/qsign-server:1.1.9

然后使用 http://127.0.0.1:8080/sign?key=114514 作为签名服务地址即可。

Docker-Compose

同样需要先把挂载的内容复制到宿主机,避免因为宿主机文件夹空的导致挂载后覆盖容器内的文件夹内容,启动前需要修改配置文件。

docker run -d --rm --name tmp_cont bennettwu/qsign-server:1.1.9 sh -c 'sleep 10'  && docker cp tmp_cont:/app/txlib "$(pwd)/"
version: "3"
services:
  qsign-server:
    image: bennettwu/qsign-server:1.1.9
    ports:
      # 如果改了 config.json 中的 port 值则需要跟此处的第二个端口一致
      - "8080:80"
    container_name: qsign-server
    volumes:
      # 可以放txlib目录中的.so文件
      - ./txlib/:/app/txlib
    restart: always

环境变量

程序启动的参数将不再通过环境变量控制,而由 config.json 管理。

名称 默认值 描述
COUNT 1 unidbg 实例数量 (建议等于核心数) 【数值越大并发能力越强,内存占用越大】
ANDROID_ID device.json 中的 android_id
TZ Asia/Shanghai 时区
DYNAMIC false 是否开启动态引擎(加速Sign计算,有时候会出现#52

历史版本