Files
2026-02-11 16:31:27 +08:00
..
2026-02-11 16:31:27 +08:00
2026-02-11 16:31:27 +08:00
2026-02-11 16:31:27 +08:00

iam-service 部署(仅核心服务)

本目录仅包含 iam-service 的部署配置,明确排除以下组件:

  • PostgreSQL不在本目录内提供部署/启动)
  • Redis不在本目录内提供部署/启动)
  • iam-front不在本目录内提供部署/启动)

环境变量(唯一真实来源)

  • 唯一来源:iam-service/.env
  • 部署脚本与 docker-compose 均以该文件作为环境变量来源(包括端口映射所需的 ${PORT} 插值)。

密钥文件验证(以 data 目录为准)

  • iam-service/data/jwt_private_key.pem
  • iam-service/data/jwt_public_key.pem

.env 中显式设置了 JWT_PRIVATE_KEY_PEM / JWT_PUBLIC_KEY_PEM,校验脚本会要求其内容与上述文件内容一致;若未设置,则要求上述文件存在且非空。

部署文件结构

  • deploy/validate-env.sh:环境变量与密钥文件校验
  • deploy/docker/Dockerfileiam-service 镜像构建
  • deploy/docker/docker-compose.yml:仅定义 iam-service 服务
  • deploy/docker/start.sh:启动(会先执行校验脚本)
  • deploy/docker/stop.sh:停止

启动/停止

启动:

bash deploy/docker/start.sh

停止:

bash deploy/docker/stop.sh

外部依赖(由你自行提供)

iam-service 启动仍需要以下外部服务地址(来自 .env

  • DATABASE_URL:指向已存在的 PostgreSQL 实例
  • REDIS_URL:指向已存在的 Redis 实例

注意:若通过 Docker 部署,.env 中的 localhost/127.0.0.1 指向的是容器自身,不是宿主机。此时请将地址改为宿主机可达 IP 或网关域名(例如 host.docker.internal,视你的 Docker 环境而定)。