这是一个名为 wxtoken 的小项目,包含用于运行或打包的 Dockerfile、入口脚本 main.py 以及依赖文件 requirements.txt。README 提供快速启动、构建与运行说明,适用于在 Windows (PowerShell) 下本地运行与使用 Docker 构建镜像。
以下说明假定你在仓库根目录(包含 Dockerfile、main.py、requirements.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: 日志级别,例如 INFO、DEBUG。
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
创建并激活虚拟环境(PowerShell):
python -m venv .venv .\.venv\Scripts\Activate.ps1
安装依赖:
pip install -r requirements.txt
运行应用:
python main.py
注意:main.py 的运行方式依赖于项目具体实现(例如是否启动 HTTP 服务)。如需自定义启动参数,请查看 main.py 源码。
构建镜像:
docker build -t wxtoken:latest .
运行容器(交互式,删除容器后退出):
docker run --rm -it wxtoken:latest
(提示)如果你希望在容器中以特定环境变量或配置启动,请在 docker run 中使用 -e 或挂载配置文件。
项目依赖列在 requirements.txt,可通过 pip install -r requirements.txt 安装。
CHANGELOG.md 与版本标签。欢迎提交 issue 或 pull request。建议工作流程:
feature/描述。MIT