机器license控制

直接部署

  1. 客户端采集机器信息,生成client.dat二进制文件(运行client_license.so)发送给服务端。
  2. 服务端利用client.dat导出LICENSE文件(运行server_licese.so)发送给客户端。
  3. 启动运行脚本(读取LICENSE)与机器信息验证,如果一致进行启动,不一致直接返回错误信息。(运行脚本用cython编译成so文件)

docker部署

  1. 客户端采集机器信息,生成client.dat二进制文件(运行client_license.so)发送给服务端。
  2. 服务端利用client.dat生成LICENSE,提前写入docker文件的启动脚本中。
  3. 利用cython编译启动脚本(已编译),通过so文件将主机信息传入docker容器。
  4. docker容器的里的程序启动脚本与传入的环境变量进行验证,如果一致进行启动,不一致直接返回错误信息。