# 德咚打印机用随机挂卡生成 **Repository Path**: seraph2047/random-number-server ## Basic Information - **Project Name**: 德咚打印机用随机挂卡生成 - **Description**: 德咚打印机接口,生成随机不重复数字的服务,主要用于制作幸运刮卡 - **Primary Language**: Python - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-11-20 - **Last Updated**: 2026-04-23 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 随机数表服务(random-number-server) 一个轻量的 Python + H5 项目,用于生成随机数表并通过网页/API 访问。 ## 功能概览 - 按行列生成随机数表 - 支持分段列名(如 `a1/a2`、`b1/b2`) - 支持随机范围参数(`rs`、`re`) - 支持是否允许重复(`dup`) - 支持多页模式(`mp`) ## 项目结构 - `server.py`:后端 HTTP 服务 - `index.html` + `styles.css` + `script.js` + `utils.js` + `effect.js`:前端页面 - `Dockerfile`:容器构建文件 - `remote_git_pull_and_build.sh`:CentOS 远程拉代码并构建/重启容器脚本 ## 本地运行(不使用 Docker) ```bash python server.py ``` 默认端口:`9998` 访问地址:`http://localhost:9998/` ## Docker 运行 ```bash docker build -t random-number-server:latest . docker rm -f random-number-server >/dev/null 2>&1 || true docker run -d --name random-number-server -p 9998:9998 --restart unless-stopped random-number-server:latest ``` ## CentOS 远程部署(推荐) 在服务器仓库目录执行: ```bash chmod +x remote_git_pull_and_build.sh ./remote_git_pull_and_build.sh ``` 可选参数: ```bash ./remote_git_pull_and_build.sh [repo_dir] [branch] [image_name] [container_name] [host_port] [container_port] ``` 示例: ```bash ./remote_git_pull_and_build.sh /opt/random-number-server master random-number-server random-number-server 9998 9998 ``` ## API 参数说明 - `c`:列数(默认 `5`) - `r`:行数(默认 `10`) - `p`:分段数(默认 `1`) - `rs`:随机范围起始值(默认 `1`) - `re`:随机范围结束值(默认根据模式计算) - `dup`:是否允许重复(`0/1` 或 `false/true`) - `mp`:是否启用多页模式(`0/1` 或 `false/true`) 示例: ```text http://localhost:9998/?c=5&r=10 http://localhost:9998/?c=6&r=5&p=2&rs=1&re=20 http://localhost:9998/?c=6&r=5&p=2&dup=1 http://localhost:9998/?c=8&r=10&mp=1&rs=1&re=80 ``` ## 常见问题 ### Windows 已安装 Docker,但无法启动引擎 如果 Docker Desktop 提示 `Virtualization support not detected`,说明系统未开启虚拟化能力。 这种情况下建议直接使用 CentOS 远程部署流程(上面的 `remote_git_pull_and_build.sh`)。