
openiamdocker/postgresOpenIAM Postgres Database 是为 OpenIAM 身份管理平台定制的 PostgreSQL 数据库镜像,专门用于支持 OpenIAM 平台的身份管理、访问控制、权限分配、单点登录等核心功能的数据存储需求。该镜像包含预配置的数据库结构、表关系及性能优化设置,可直接与 OpenIAM 应用组件集成,简化 OpenIAM 平台的部署流程。
bashdocker run -d \ --name openiam-postgres \ -p 5432:5432 \ -e POSTGRES_USER=openiam_admin \ -e POSTGRES_PASSWORD=your_secure_password \ -e POSTGRES_DB=openiam_db \ -v openiam-postgres-data:/var/lib/postgresql/data \ openiam/postgres:latest
参数说明:
-p 5432:5432:将容器内 PostgreSQL 服务端口映射到主机 5432 端口。-e POSTGRES_USER:数据库管理员用户名(默认建议使用 openiam_admin)。-e POSTGRES_PASSWORD:数据库管理员密码(需设置强密码)。-e POSTGRES_DB:OpenIAM 专用数据库名(默认建议使用 openiam_db)。-v openiam-postgres-data:/var/lib/postgresql/data:挂载卷用于数据持久化,openiam-postgres-data 为卷名称。在 OpenIAM 平台部署时,推荐与其他组件(如 OpenIAM 应用服务器、Redis 等)通过 docker-compose.yml 统一编排:
yamlversion: '3.8' services: openiam-postgres: image: openiam/postgres:latest container_name: openiam-postgres restart: always environment: POSTGRES_USER: openiam_admin POSTGRES_PASSWORD: your_secure_password POSTGRES_DB: openiam_db POSTGRES_INITDB_ARGS: "--encoding=UTF8 --lc-collate=C --lc-ctype=en_US.UTF-8" # 字符集配置 ports: - "5432:5432" volumes: - openiam-postgres-data:/var/lib/postgresql/data networks: - openiam-network # 其他 OpenIAM 组件(如应用服务器)可通过此网络连接数据库 openiam-app: image: openiam/application:latest depends_on: - openiam-postgres # ... 其他 OpenIAM 应用配置 volumes: openiam-postgres-data: # 定义持久化卷 networks: openiam-network: # 自定义网络,确保组件间通信
除基础环境变量外,可通过以下变量进一步自定义数据库行为:
| 环境变量 | 描述 | 默认值 |
|---|---|---|
POSTGRES_USER | 数据库管理员用户名 | openiam_admin |
POSTGRES_PASSWORD | 数据库管理员密码 | 无(必须手动设置) |
POSTGRES_DB | OpenIAM 数据库名称 | openiam_db |
PGDATA | 数据库数据存储路径 | /var/lib/postgresql/data |
POSTGRES_INITDB_ARGS | 初始化数据库时的额外参数(如字符集) | --encoding=UTF8 |
MAX_CONNECTIONS | 最大数据库连接数 | 100(OpenIAM 优化值) |
OpenIAM 应用需通过以下数据库连接信息接入该镜像:
openiam-postgres,需在同一 Docker 网络内)或主机 IPPOSTGRES_DB 环境变量值(默认 openiam_db)POSTGRES_USER 和 POSTGRES_PASSWORD 环境变量值通过 docker exec 执行 pg_dump 命令备份数据:
bashdocker exec openiam-postgres pg_dump -U $POSTGRES_USER -d $POSTGRES_DB > openiam_db_backup.sql
将备份文件导入数据库:
bashcat openiam_db_backup.sql | docker exec -i openiam-postgres psql -U $POSTGRES_USER -d $POSTGRES_DB



manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务