
biow0lf/evemonk-pgheropghero Docker镜像是基于PostgreSQL性能监控工具pghero构建的容器化部署方案,旨在简化PostgreSQL数据库性能监控的搭建流程。通过该镜像,用户无需手动配置依赖环境,可快速部署pghero服务,实现对PostgreSQL数据库的实时性能分析、查询监控及优化建议生成。
通过以下命令快速启动pghero服务:
bashdocker run -d \ --name pghero \ -p 3000:3000 \ -e DATABASE_URL="postgres://user:password@postgres-host:5432/dbname?sslmode=require" \ -e PORT=3000 \ -e PGHERO_USERNAME="admin" \ -e PGHERO_PASSWORD="secure-pass" \ biow0lf/evemonk-pghero:latest
启动后,通过 http://localhost:3000 访问pghero Web界面,使用配置的PGHERO_USERNAME和PGHERO_PASSWORD登录。
若需与PostgreSQL数据库联动部署,可使用以下docker-compose.yml配置:
yamlversion: '3.8' services: pghero: image: biow0lf/evemonk-pghero:latest ports: - "3000:3000" environment: - DATABASE_URL="postgres://postgres:postgres@postgres:5432/mydb?sslmode=disable" # 连接同一网络的PostgreSQL容器 - PORT=3000 - PGHERO_USERNAME="pghero-admin" - PGHERO_PASSWORD="your-strong-password" depends_on: - postgres # 依赖PostgreSQL服务启动 restart: unless-stopped postgres: image: postgres:15-alpine environment: - POSTGRES_USER=postgres - POSTGRES_PASSWORD=postgres - POSTGRES_DB=mydb volumes: - postgres-data:/var/lib/postgresql/data volumes: postgres-data:
| 环境变量名 | 描述 | 必填 | 默认值 | 示例值 |
|---|---|---|---|---|
DATABASE_URL | Postgres数据库连接URL(需包含用户名、密码、主机、端口及数据库名) | 是 | 无 | postgres://user:pass@host:5432/dbname |
PORT | pghero服务监听端口 | 否 | 3000 | 8080 |
PGHERO_USERNAME | Web界面访问用户名(启用基本认证) | 否 | 无(不启用) | admin |
PGHERO_PASSWORD | Web界面访问密码(与PGHERO_USERNAME同时配置时启用认证) | 否 | 无(不启用) | secure-*** |
PGHERO_SLOW_QUERY_MS | 慢查询阈值(毫秒),超过该值的查询将被标记为慢查询 | 否 | 200 | 500 |
TZ | 服务时区(影响时间戳显示) | 否 | UTC | Asia/Shanghai |
服务启动后,通过浏览器访问 http://<宿主机IP>:<PORT>(如http://localhost:3000),输入配置的PGHERO_USERNAME和PGHERO_PASSWORD(若启用认证)即可进入pghero控制台,查看数据库性能数据。
PGHERO_USERNAME和PGHERO_PASSWORD认证,并限制访问IP(可通过Docker网络策略或反向代理实现)pg_stat_statements扩展权限(执行CREATE EXTENSION pg_stat_statements;),否则部分性能指标无法采集pg_stat_statements等系统表),无需额外挂载卷



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