logo
0
0
Login

wxtoken

项目简介

这是一个名为 wxtoken 的小项目,包含用于运行或打包的 Dockerfile、入口脚本 main.py 以及依赖文件 requirements.txt。README 提供快速启动、构建与运行说明,适用于在 Windows (PowerShell) 下本地运行与使用 Docker 构建镜像。

快速开始

以下说明假定你在仓库根目录(包含 Dockerfilemain.pyrequirements.txt)运行命令。

环境变量

项目使用环境变量进行配置,仓库提供一个示例文件 .env.sample,请复制为 .env 并根据需要修改。示例内容(位于 .env.sample):

# Redis REDIS_URL=redis://redis:6379/2 # Token storage API_TOKEN_KEY=weixin:access_token API_TOKEN_REFRESH_INTERVAL=3600 # External token API API_TOKEN_URL=https://api.weixin.qq.com/cgi-bin/token API_CLIENT_ID=wx**************88 API_CLIENT_SECRET=3f*****************************c # Other settings LOG_LEVEL=INFO TIMEZONE=Asia/Shanghai
  • 说明(简要):

  • REDIS_URL: Redis 连接地址(如 docker-compose 中的服务名或外部实例)。

  • API_TOKEN_KEY: 存储 Token 的 Redis 键名前缀。

  • API_TOKEN_REFRESH_INTERVAL: 以秒为单位的刷新间隔。

  • API_TOKEN_URL, API_CLIENT_ID, API_CLIENT_SECRET: 调用外部 API 获取 token 所需的地址与凭证。

  • LOG_LEVEL: 日志级别,例如 INFODEBUG

  • TIMEZONE: 时区设置,例如 Asia/Shanghai

重要: 切勿将包含真实凭据的 .env 提交到代码仓库。将实际凭据保存在安全的机密管理系统中或在 CI 中注入。

本地加载环境变量(已安装 python-dotenv 或在代码中读取 .env 时): 将 .env.sample 复制为 .env 并运行(PowerShell):

copy .env.sample .env .\.venv\Scripts\Activate.ps1 python main.py

Docker 使用环境变量:

  • 使用 --env-file 传入 .env:
docker build -t wxtoken:latest . docker run --rm --env-file .env -p 8000:8000 wxtoken:latest
  • 或挂载文件并由容器内启动脚本加载:
docker run --rm -v ${PWD}:/app -w /app -p 8000:8000 wxtoken:latest

本地运行(推荐用于开发)

  1. 创建并激活虚拟环境(PowerShell):

    python -m venv .venv .\.venv\Scripts\Activate.ps1
  2. 安装依赖:

    pip install -r requirements.txt
  3. 运行应用:

    python main.py

注意:main.py 的运行方式依赖于项目具体实现(例如是否启动 HTTP 服务)。如需自定义启动参数,请查看 main.py 源码。

使用 Docker(构建与运行镜像)

构建镜像:

docker build -t wxtoken:latest .

运行容器(交互式,删除容器后退出):

docker run --rm -it wxtoken:latest

(提示)如果你希望在容器中以特定环境变量或配置启动,请在 docker run 中使用 -e 或挂载配置文件。

依赖

项目依赖列在 requirements.txt,可通过 pip install -r requirements.txt 安装。

构建与发布建议

  • 使用 CI(如 GitHub Actions)在推送时自动构建并推送 Docker 镜像到容器仓库。
  • 在发布前添加 CHANGELOG.md 与版本标签。

贡献

欢迎提交 issue 或 pull request。建议工作流程:

  1. Fork 仓库并创建分支 feature/描述
  2. 提交清晰的变更说明与测试(如适用)。
  3. 发起 Pull Request,说明变更目的与影响范围。

许可证

MIT

About

微信公众平台access_token中控服务器

64.00 KiB
0 forks0 stars1 branches0 TagREADMEMIT license
Language
Python92.2%
Dockerfile7.8%