zabbix-web-nginx-mysql

zabbix/zabbix-web-nginx-mysql

zabbix
自动构建

Zabbix前端是一款用于网络、服务器、应用程序等IT资源监控的界面,它基于Nginx Web服务器构建,并支持MySQL数据库作为数据存储后端,能够为用户提供直观的监控数据展示、配置管理及告警信息查看等功能,是Zabbix监控系统中实现用户与系统交互的核心组件。

267 次收藏下载次数: 0状态:自动构建维护者:zabbix仓库类型:镜像最近更新:2 天前
让 AI 帮你使用轩辕镜像?

如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。

只需在 AI 对话中先发送下面这段话即可:

请先阅读并遵守:https://xuanyuan.cloud/agents.md

未读文档前不要生成 pull 命令或排错方案。

查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。

下载命令
点击查看

Zabbix 简介

Zabbix 是一款企业级开源分布式监控解决方案,可对网络参数、服务器健康状态及完整性进行全面监控。它支持灵活的通知机制,允许用户为各类事件配置邮件告警,以便快速响应服务器问题。同时,Zabbix 基于存储数据提供出色的报表和数据可视化功能,适用于容量规划场景。

更多 Zabbix 组件信息及相关下载,可访问:[] 和 Zabbix Web 界面

Zabbix Web 界面是 Zabbix 软件的组成部分,用于管理被监控资源和查看监控统计数据。

Zabbix Web 界面 Docker 镜像

以下是官方发布的 Zabbix Web 界面 Docker 镜像,基于 Alpine Linux v3.22、Ubuntu 24.04(noble)、CentOS Stream 10 和 Oracle Linux 10 构建。支持的 Zabbix Web 界面版本及对应标签如下:

  • Zabbix Web 界面 6.0(标签:alpine-6.0-latest、ubuntu-6.0-latest、ol-6.0-latest)
  • Zabbix Web 界面 6.0.(标签:alpine-6.0.、ubuntu-6.0.、ol-6.0.)
  • Zabbix Web 界面 7.0(标签:alpine-7.0-latest、ubuntu-7.0-latest、ol-7.0-latest)
  • Zabbix Web 界面 7.0.(标签:alpine-7.0.、ubuntu-7.0.、ol-7.0.)
  • Zabbix Web 界面 7.2(标签:alpine-7.2-latest、ubuntu-7.2-latest、ol-7.2-latest)
  • Zabbix Web 界面 7.2.(标签:alpine-7.2.、ubuntu-7.2.、ol-7.2.)
  • Zabbix Web 界面 7.4(标签:alpine-7.4-latest、ubuntu-7.4-latest、ol-7.4-latest、alpine-latest、ubuntu-latest、ol-latest、latest)
  • Zabbix Web 界面 7.4.(标签:alpine-7.4.、ubuntu-7.4.、ol-7.4.)
  • Zabbix Web 界面 8.0(标签:alpine-trunk、ubuntu-trunk、ol-trunk)

镜像会随新版本发布同步更新,其中 latest 标签默认基于 Alpine Linux。

镜像版本说明

Zabbix Web 界面提供四种版本,分别对应不同的 Web 服务器和数据库组合:

  • 基于 Apache2 Web 服务器,支持 MySQL 数据库
  • 基于 Apache2 Web 服务器,支持 PostgreSQL 数据库
  • 基于 Nginx Web 服务器,支持 MySQL 数据库
  • 基于 Nginx Web 服务器,支持 PostgreSQL 数据库

本文档主要介绍 基于 Nginx + MySQL 的 Zabbix Web 界面镜像。

如何使用镜像

启动 zabbix-web-nginx-mysql 容器

通过以下命令启动 Zabbix Web 界面容器:

console
docker run --name some-zabbix-web-nginx-mysql \
  -e DB_SERVER_HOST="some-mysql-server" \
  -e MYSQL_USER="some-user" \
  -e MYSQL_PASSWORD="some-password" \
  -e ZBX_SERVER_HOST="some-zabbix-server" \
  -e PHP_TZ="some-timezone" \
  -d docker.xuanyuan.run/zabbix/zabbix-web-nginx-mysql:tag

参数说明:

  • some-zabbix-web-nginx-mysql:自定义容器名称
  • some-mysql-server:MySQL 服务器的 IP 或 DNS 名称
  • some-user:连接 MySQL 数据库的用户名
  • some-password:MySQL 用户密码
  • some-zabbix-server:Zabbix 服务器/代理的 IP 或 DNS 名称
  • some-timezone:PHP 时区(如 Asia/Shanghai)
  • tag:指定镜像版本标签(参考上文“支持的版本及标签”)

完整标签列表可查看 [Docker Hub] 。

关联 Zabbix Server 容器

如需将 Web 界面容器与 Zabbix Server 关联,可使用 --link 参数:

console
docker run --name some-zabbix-web-nginx-mysql \
  --link some-zabbix-server:zabbix-server \
  -e DB_SERVER_HOST="some-mysql-server" \
  -e MYSQL_USER="some-user" \
  -e MYSQL_PASSWORD="some-password" \
  -e ZBX_SERVER_HOST="some-zabbix-server" \
  -e PHP_TZ="some-timezone" \
  -d docker.xuanyuan.run/zabbix/zabbix-web-nginx-mysql:tag

关联 MySQL 数据库容器

如需关联 MySQL 容器,同样使用 --link 参数:

console
docker run --name some-zabbix-web-nginx-mysql \
  --link some-mysql-server:mysql \
  -e DB_SERVER_HOST="some-mysql-server" \
  -e MYSQL_USER="some-user" \
  -e MYSQL_PASSWORD="some-password" \
  -e ZBX_SERVER_HOST="some-zabbix-server" \
  -e PHP_TZ="some-timezone" \
  -d docker.xuanyuan.run/zabbix/zabbix-web-nginx-mysql:tag

容器操作与日志查看

进入容器终端

使用 docker exec 命令进入容器内部:

console
docker exec -ti some-zabbix-web-nginx-mysql /bin/bash

查看 Web 界面日志

通过 Docker 容器日志命令查看 Zabbix Web 界面运行日志:

console
docker logs some-zabbix-web-nginx-mysql

环境变量配置

启动容器时,可通过 -e 参数设置环境变量调整 Zabbix Web 界面配置。以下为常用变量说明:

核心连接参数

变量名说明默认值
ZBX_SERVER_HOSTZabbix 服务器/代理的 IP 或 DNS 名称zabbix-server
ZBX_SERVER_PORTZabbix 服务器监听端口10051
DB_SERVER_HOSTMySQL 服务器的 IP 或 DNS 名称mysql-server
DB_SERVER_PORTMySQL 服务器端口3306
MYSQL_USERMySQL 数据库用户名zabbix
MYSQL_PASSWORDMySQL 用户密码zabbix
MYSQL_DATABASEZabbix 数据库名称zabbix
PHP_TZPHP 时区(如 Asia/Shanghai)Europe/Riga

安全凭证文件(推荐生产环境使用)

为避免明文传递密码,可通过文件方式注入 MySQL 用户名/密码(适用于 Docker Swarm/Kubernetes 等场景):

  • MYSQL_USER_FILE:指向存储用户名的文件路径
  • MYSQL_PASSWORD_FILE:指向存储密码的文件路径

示例(本地文件挂载):

console
docker run --name some-zabbix-web-nginx-mysql \
  -e DB_SERVER_HOST="some-mysql-server" \
  -v ./.MYSQL_USER:/run/secrets/MYSQL_USER \
  -e MYSQL_USER_FILE=/run/secrets/MYSQL_USER \
  -v ./.MYSQL_PASSWORD:/run/secrets/MYSQL_PASSWORD \
  -e MYSQL_PASSWORD_FILE=/run/secrets/MYSQL_PASSWORD \
  -e PHP_TZ="Asia/Shanghai" \
  -d docker.xuanyuan.run/zabbix/zabbix-web-nginx-mysql:tag

示例(Docker Swarm 密钥):

console
# 创建密钥
printf "zabbix" | docker secret create MYSQL_USER -
printf "zabbix" | docker secret create MYSQL_PASSWORD -

# 使用密钥启动容器
docker run --name some-zabbix-web-nginx-mysql \
  -e DB_SERVER_HOST="some-mysql-server" \
  -e MYSQL_USER_FILE=/run/secrets/MYSQL_USER \
  -e MYSQL_PASSWORD_FILE=/run/secrets/MYSQL_PASSWORD \
  -e ZBX_SERVER_HOST="some-zabbix-server" \
  -e PHP_TZ="Asia/Shanghai" \
  -d docker.xuanyuan.run/zabbix/zabbix-web-nginx-mysql:tag

高级配置参数

变量名说明
ZBX_HISTORYSTORAGEURLElasticsearch 历史存储服务的 HTTP(S) URL(3.4.5+ 支持)
ZBX_HISTORYSTORAGETYPES需存储到 Elasticsearch 的值类型(如 ['uint', 'dbl'])
ZBX_SERVER_NAMEWeb 界面顶部显示的 Zabbix 实例名称
DB_DOUBLE_IEEE754是否启用 64 位浮点型历史数据的 IEEE754 兼容模式(5.0.0+,默认启用)
ZBX_DB_ENCRYPTION是否启用数据库连接加密(5.0.0+,默认禁用,设为 true 启用)

其他参数

还支持 PHP-FPM 配置(如 PHP_FPM_PM_MAX_CHILDREN)、Nginx 配置(如 WEB_REAL_IP_FROM)、TLS 加密(如 ZBX_DB_CA_FILE)、SAML 认证(如 ZBX_SSO_SP_KEY)等,详细说明可参考 [官方文档] 。

容器卷挂载

可通过 -v 参数挂载宿主机目录到容器,实现自定义配置或持久化数据:

/etc/ssl/nginx

用于启用 HTTPS,需挂载包含以下文件的目录:

  • ssl.crt:SSL 证书文件
  • ssl.key:SSL 私钥文件
  • dhparam.pem:DH 参数文件

配置方法参考 [Nginx 官方文档] 。

/etc/zabbix/web/certs

用于 SAML 认证,需挂载包含以下文件的目录(5.0.0+ 支持):

  • sp.key:服务提供商(SP)私钥
  • sp.crt:服务提供商(SP)证书
  • idp.crt:身份提供商(IDP)证书

/var/lib/zabbix/enc

用于存储 TLS 相关文件(7.4.0+ 支持),需与 ZBX_SERVER_TLS_CAFILE(CA 文件路径)、ZBX_SERVER_TLS_KEYFILE(私钥路径)等变量配合使用。

镜像变体说明

Zabbix Web 界面镜像提供多种基础系统版本,适用于不同场景:

alpine-<version>

基于 Alpine Linux,镜像体积极小(约 5MB 基础镜像),适合对资源敏感的场景。需注意其使用 musl libc,部分依赖 glibc 的软件可能存在兼容性问题。

ubuntu-<version>

基于 Ubuntu 24.04,为默认推荐版本,兼容性好,适合大多数通用场景。

ol-<version>

基于 Oracle Linux 10,针对 Oracle 工作负载优化,支持 Ksplice、DTrace 等企业级特性。

支持的 Docker 版本

官方推荐 Docker 1.12.0 及以上版本,旧版本(低至 1.6)可尝试使用,但不保证完全兼容。
升级 Docker 方法参考 [Docker 官方文档] 。

用户反馈与支持

文档

镜像详细文档位于 [GitHub 仓库] 的 web-nginx-mysql/ 目录。

问题反馈

如遇使用问题,可通过 [GitHub Issues] 提交。

贡献代码

欢迎提交功能改进、bug 修复或更新,建议先通过 GitHub Issues 讨论计划,再提交 Pull Request。

许可证

  • Zabbix 7.0 及以上版本:采用 GNU Affero General Public License v3(AGPLv3)
  • Zabbix 6.4 及以下版本:采用 GNU General Public License v2(GPLv2)

商业用户可通过购买技术支持获取额外服务。

镜像拉取方式

您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。

轩辕镜像加速拉取命令点我查看更多 zabbix-web-nginx-mysql 镜像标签

docker pull docker.xuanyuan.run/zabbix/zabbix-web-nginx-mysql:<标签>

DockerHub 原生拉取命令

docker pull zabbix/zabbix-web-nginx-mysql:<标签>

用户好评

来自真实用户的反馈,见证轩辕镜像的优质服务

用户头像

oldzhang

运维工程师

Linux服务器

5

"Docker访问体验非常流畅,大镜像也能快速完成下载。"

官方技术交流群:问题咨询请:提交工单
专业版 · 高速稳定拉取镜像
50GB 仅 ¥8/年
高速镜像下载在线技术支持99.95% SLA 保障付费会员免广告