
如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这句话即可:
请先完整阅读并严格遵守以下文档中的全部规则与要求:
https://xuanyuan.cloud/agents.md
在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
!logo
Zabbix是企业级开源分布式监控解决方案,可监控网络参数、服务器健康状态及完整性。Zabbix Web界面是Zabbix软件的核心组件,用于管理监控资源、配置告警规则及查看监控统计数据,支持通过灵活的通知机制实现事件告警,助力快速响应服务器问题,并提供基于历史数据的报表和可视化功能,适用于容量规划等场景。
本镜像为Zabbix官方Web界面镜像,基于Apache2 Web服务器和PostgreSQL数据库支持,提供稳定、高效的监控管理界面。
镜像基于以下操作系统构建:
支持的Zabbix Web界面版本及对应标签格式如下:
| Zabbix版本 | 标签格式示例 | 说明 |
|---|---|---|
| 6.0 | alpine-6.0-latest, ubuntu-6.0-latest | 6.0系列最新版 |
| 6.0.* | alpine-6.0.25, ubuntu-6.0.25 | 6.0系列特定补丁版本 |
| 7.0 | alpine-7.0-latest, ol-7.0-latest | 7.0系列最新版 |
| 7.0.* | ubuntu-7.0.10, ol-7.0.10 | 7.0系列特定补丁版本 |
| 7.2 | alpine-7.2-latest, ubuntu-7.2-latest | 7.2系列最新版 |
| 7.2.* | alpine-7.2.5, ol-7.2.5 | 7.2系列特定补丁版本 |
| 7.4 | alpine-latest, ubuntu-latest, latest | 7.4系列最新版(默认) |
| 7.4.* | alpine-7.4.2, ubuntu-7.4.2 | 7.4系列特定补丁版本 |
| 8.0 | alpine-trunk, ubuntu-trunk | 开发中版本(主干分支) |
注意:
latest标签默认基于Alpine Linux构建,镜像会随Zabbix新版本发布自动更新。
使用以下命令启动Zabbix Web界面容器,需指定PostgreSQL数据库和Zabbix Server地址:
consoledocker run --name zabbix-web -d \ -e DB_SERVER_HOST="postgres-server-ip" \ -e POSTGRES_USER="zabbix" \ -e POSTGRES_PASSWORD="zabbix" \ -e ZBX_SERVER_HOST="zabbix-server-ip" \ -e PHP_TZ="Asia/Shanghai" \ -p 8080:80 \ docker.xuanyuan.run/zabbix/zabbix-web-apache-pgsql:alpine-latest
参数说明:
--name zabbix-web:容器名称-e:环境变量(详细说明见5.4节)-p 8080:80:映射容器80端口到主机8080端口zabbix/zabbix-web-apache-pgsql:alpine-latest:镜像名称及标签通过--link参数链接Zabbix Server容器(需确保Zabbix Server已启动):
consoledocker run --name zabbix-web -d \ --link zabbix-server:zabbix-server \ # 链接Zabbix Server容器 -e DB_SERVER_HOST="postgres-server-ip" \ -e POSTGRES_USER="zabbix" \ -e POSTGRES_PASSWORD="zabbix" \ -e ZBX_SERVER_HOST="zabbix-server" \ # 使用链接的容器名称作为Server地址 -e PHP_TZ="Asia/Shanghai" \ -p 8080:80 \ zabbix/zabbix-web-apache-pgsql:alpine-latest
通过--link参数链接PostgreSQL容器(需确保PostgreSQL已启动并初始化Zabbix数据库):
consoledocker run --name zabbix-web -d \ --link postgres:postgres \ # 链接PostgreSQL容器 -e DB_SERVER_HOST="postgres" \ # 使用链接的容器名称作为数据库地址 -e POSTGRES_USER="zabbix" \ -e POSTGRES_PASSWORD="zabbix" \ -e ZBX_SERVER_HOST="zabbix-server-ip" \ -e PHP_TZ="Asia/Shanghai" \ -p 8080:80 \ zabbix/zabbix-web-apache-pgsql:alpine-latest
5.4.1 查看日志
通过Docker日志命令查看Web界面运行日志:
consoledocker logs zabbix-web
5.4.2 进入容器shell
通过docker exec进入容器内部:
consoledocker exec -ti zabbix-web /bin/bash # Alpine版本使用/bin/sh
以下是包含Zabbix Web、Zabbix Server和PostgreSQL的完整docker-compose配置:
yamlversion: '3.8' services: db: image: docker.xuanyuan.run/postgres:16-alpine container_name: zabbix-db environment: POSTGRES_USER: zabbix POSTGRES_PASSWORD: zabbix POSTGRES_DB: zabbix volumes: - postgres-data:/var/lib/postgresql/data restart: always networks: - zabbix-net server: image: docker.xuanyuan.run/zabbix/zabbix-server-pgsql:alpine-latest container_name: zabbix-server environment: DB_SERVER_HOST: db POSTGRES_USER: zabbix POSTGRES_PASSWORD: zabbix POSTGRES_DB: zabbix ZBX_LISTENPORT: 10051 depends_on: - db restart: always networks: - zabbix-net web: image: docker.xuanyuan.run/zabbix/zabbix-web-apache-pgsql:alpine-latest container_name: zabbix-web environment: DB_SERVER_HOST: db POSTGRES_USER: zabbix POSTGRES_PASSWORD: zabbix POSTGRES_DB: zabbix ZBX_SERVER_HOST: server PHP_TZ: Asia/Shanghai ZBX_SERVER_NAME: "企业监控系统" ports: - "8080:80" depends_on: - server - db restart: always networks: - zabbix-net networks: zabbix-net: driver: bridge volumes: postgres-data:
容器支持通过环境变量自定义配置,以下为常用环境变量说明:
| 变量名 | 说明 | 默认值 |
|---|---|---|
| DB_SERVER_HOST | PostgreSQL数据库服务器IP或域名 | postgres-server |
| DB_SERVER_PORT | PostgreSQL数据库端口 | 5432 |
| POSTGRES_USER | 数据库访问用户名 | zabbix |
| POSTGRES_PASSWORD | 数据库访问密码 | zabbix |
| POSTGRES_USER_FILE | 存储数据库用户名的文件路径(用于Docker Secrets) | - |
| POSTGRES_PASSWORD_FILE | 存储数据库密码的文件路径(用于Docker Secrets) | - |
| POSTGRES_DB | Zabbix数据库名称 | zabbix |
| POSTGRES_USE_IMPLICIT_SEARCH_PATH | 是否使用PostgreSQL隐式搜索路径(适用于PgBouncer等代理场景) | false |
| 变量名 | 说明 | 默认值 |
|---|---|---|
| ZBX_SERVER_HOST | Zabbix Server或Proxy的IP或域名 | zabbix-server |
| ZBX_SERVER_PORT | Zabbix Server端口 | *** |
| ZBX_SERVER_NAME | Web界面顶部显示的Zabbix实例名称 | - |
| 变量名 | 说明 | 默认值 |
|---|---|---|
| PHP_TZ | PHP时区(参考http://php.net/manual/zh/timezones.php%EF%BC%89 | Europe/Riga |
| ZBX_MAXEXECUTIONTIME | PHP max_execution_time 选项(秒) | 300 |
| ZBX_MEMORYLIMIT | PHP memory_limit 选项 | 128M |
| ZBX_POSTMAXSIZE | PHP post_max_size 选项 | 16M |
| ZBX_UPLOADMAXFILESIZE | PHP upload_max_filesize 选项 | 2M |
| ZBX_MAXINPUTTIME | PHP max_input_time 选项(秒) | 300 |
| 变量名 | 说明 | 默认值 |
|---|---|---|
| ZBX_DB_ENCRYPTION | 是否启用数据库TLS加密连接 | false |
| ZBX_DB_KEY_FILE | 数据库TLS密钥文件路径 | - |
| ZBX_DB_CERT_FILE | 数据库TLS证书文件路径 | - |
| ZBX_DB_CA_FILE | 数据库TLS CA证书文件路径 | - |
| ZBX_DB_VERIFY_HOST | 是否验证数据库主机名 | false |
| ZBX_SSO_SP_KEY | SAML服务提供者(SP)私钥文件路径 | - |
| ZBX_SSO_SP_CERT | SAML服务提供者(SP)证书文件路径 | - |
| ZBX_SSO_IDP_CERT | SAML身份提供者(IDP)证书文件路径 | - |
| ZBX_SSO_SETTINGS | SSO配置JSON字符串(如{"baseurl":"https://zabbix.example.com"}) | - |
| EXPOSE_WEB_SERVER_INFO | 是否暴露Web服务器和PHP版本信息(on/off) | on |
| 变量名 | 说明 | 默认值 |
|---|---|---|
| ZBX_HISTORYSTORAGEURL | Elasticsearch历史存储URL(用于扩展存储) | - |
| ZBX_HISTORYSTORAGETYPES | 发送到历史存储的数值类型数组(如['uint','dbl']) | - |
| DB_DOUBLE_IEEE754 | 是否使用IEEE754兼容的64位浮点数值范围 | true |
| ENABLE_WEB_ACCESS_LOG | Web服务器访问日志输出位置(默认标准输出) | - |
| HTTP_INDEX_FILE | 默认索引页面 | index.php |
| ZBX_DENY_GUI_ACCESS | 是否启用Web界面维护模式(true/false) | false |
| ZBX_GUI_ACCESS_IP_RANGE | 维护模式下允许访问的IP范围数组 | - |
| ZBX_GUI_WARNING_MSG | 维护模式下显示的警告信息 | - |
容器支持以下卷挂载,用于外部配置和数据持久化:
/etc/ssl/apache2ssl.crt:Apache服务器证书ssl.key:Apache服务器私钥consoledocker run --name zabbix-web -d \ -v /host/path/to/ssl:/etc/ssl/apache2 \ ... zabbix/zabbix-web-apache-pgsql:alpine-latest
/etc/zabbix/web/certssp.key:服务提供者(SP)私钥sp.crt:服务提供者(SP)证书idp.crt:身份提供者(IDP)证书consoledocker run --name zabbix-web -d \ -v /host/path/to/saml-certs:/etc/zabbix/web/certs \ ... zabbix/zabbix-web-apache-pgsql:alpine-latest
/var/lib/zabbix/encZBX_SERVER_TLS_CAFILE:CA证书文件名ZBX_SERVER_TLS_KEYFILE:私钥文件名ZBX_SERVER_TLS_CERTFILE:证书文件名consoledocker run --name zabbix-web -d \ -v /host/path/to/tls-files:/var/lib/zabbix/enc \ -e ZBX_SERVER_TLS_CAFILE="ca.pem" \ -e ZBX_SERVER_TLS_KEYFILE="server.key" \ -e ZBX_SERVER_TLS_CERTFILE="server.crt" \ ... zabbix/zabbix-web-apache-pgsql:alpine-latest
alpine-<version> 变体ubuntu-<version> 变体ol-<version> 变体建议使用最新版Docker引擎以获得最佳兼容性和性能,升级方法参考https://docs.docker.com/engine/install/%E3%80%82
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务