Files
beaver_project/authz-service/README.md
steven_li 53c42bb81b docs(README): 更新项目部署文档添加完整部署指南
更新 README.md 文件,提供详细的单机部署指南,包括:
- 完整的服务架构说明和请求链路图解
- 环境变量配置说明和示例
- 逐步部署流程(镜像构建、网络创建、服务启动)
- 健康检查和首次注册验收步骤
- 常见问题解答

同时更新各个子模块的 README 添加环境变量示例文件引用
2026-03-16 11:23:17 +08:00

61 lines
1.5 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# authz-service
`authz-service` 现在已经整理成独立 Docker 单元。
## 组成
- `Dockerfile`
- 生产镜像构建入口
- `docker-entrypoint.sh`
- 初始化数据目录并启动 `uvicorn`
- `start-authz.sh`
- 本地或服务器快速启动脚本
- `.env.example`
- 推荐的环境变量模板
- `runtime/seed-data/`
- 空白初始化数据
- `src/`
- 原始 FastAPI 应用代码
## 设计约定
- 容器监听端口:`19090`
- 容器内数据目录:`/var/lib/authz-service/data`
- 首次启动时如果数据目录为空,会自动写入空白 JSON
- `signing_key.pem` 不会被打进镜像
- 如果挂载目录里不存在签名 key服务会在首次启动时自动生成
## 快速启动
```bash
cd /home/ivan/xuan/nano_project/authz-service
cp .env.example .env
set -a
. ./.env
set +a
./start-authz.sh --build
```
启动后验证:
```bash
curl http://127.0.0.1:19090/healthz
curl http://127.0.0.1:19090/.well-known/jwks.json
```
## 生产建议
- 用挂载卷保存 `runtime/data`
- 显式设置 `AUTHZ_INTERNAL_TOKEN`
- 显式设置外部可访问的 `AUTHZ_ISSUER`
- 例如 `https://authz.example.com`
- 如果要让 AuthZ 负责编排实例注册,还要设置 `DEPLOY_API_BASE_URL`
- 如果 deploy-control 开了鉴权,还要设置 `DEPLOY_API_TOKEN`
- 不要把 `src/data/` 里的本地示例或真实数据直接拿去打镜像
## API 说明
接口说明仍然看:
- `/home/ivan/xuan/nano_project/authz-service/src/README.md`