
如果你使用 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 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
Zabbix 是一款企业级开源分布式监控解决方案。
它能监控网络的多项参数及服务器的健康状态与完整性,支持灵活的通知机制,允许用户为几乎任何事件配置基于邮件的告警,以便快速响应服务器问题。同时,Zabbix 基于存储数据提供出色的报表和数据可视化功能,非常适合容量规划。
更多信息及组件下载可访问:[] 和
Zabbix server 是 Zabbix 软件的核心进程。
它负责数据的轮询与捕获、触发器计算、向用户发送通知。Zabbix 代理(agents)和代理服务器(proxies)会向其上报系统的可用性和完整性数据。此外,server 自身可通过简单的服务检查远程监控网络服务(如 Web 服务器、邮件服务器)。
以下是官方唯一的 Zabbix server Docker 镜像,基于 Alpine Linux v3.22、Ubuntu 24.04(noble)、CentOS Stream 10 和 Oracle Linux 10 构建。支持的 Zabbix server 版本及标签如下:
镜像会随新版本发布更新,latest 标签基于 Alpine Linux。
镜像使用 MySQL 数据库,启动流程如下:
MYSQL_ROOT_PASSWORD 或 MYSQL_ALLOW_EMPTY_PASSWORD,尝试创建 MYSQL_USER 用户并设置 MYSQL_PASSWORD,供 Zabbix server 使用;MYSQL_DATABASE 数据库是否存在,不存在则创建;dbversion 表是否存在,不存在则创建 Zabbix server 数据库 schema 并导入初始数据样本。zabbix-server-mysql通过以下命令启动 Zabbix server 容器:
bashdocker run --name some-zabbix-server-mysql -e DB_SERVER_HOST="some-mysql-server" -e MYSQL_USER="some-user" -e MYSQL_PASSWORD="some-password" --init -d docker.xuanyuan.run/zabbix/zabbix-server-mysql:tag
参数说明:
some-zabbix-server-mysql:容器名称;some-mysql-server:MySQL 服务器的 IP 或 DNS 名称;some-user/some-password:连接 Zabbix 数据库的用户及密码;tag:指定镜像版本标签(见上文“Zabbix server 镜像”中的标签列表)。[!NOTE]
Zabbix server 可通过fping工具执行 ICMP 检查。若容器运行在无 root 模式或受限制环境中,可能出现fping: Operation not permitted错误或丢包问题。此时需在docker run或podman run命令中添加--cap-add=net_raw,并修改系统参数:bashsysctl -w net.ipv4.ping_group_range=0 1995 # 1995 为 zabbix 用户组 GID
使用 docker exec 命令进入容器:
bashdocker exec -ti some-zabbix-server-mysql /bin/bash
通过 Docker 容器日志查看:
bashdocker logs some-zabbix-server-mysql
启动镜像时,可通过 -e 参数指定环境变量调整 Zabbix server 配置。
DB_SERVER_HOST:MySQL 服务器 IP 或 DNS 名称,默认 mysql-server;DB_SERVER_PORT:MySQL 端口,默认 3306;MYSQL_USER/MYSQL_PASSWORD:连接数据库的用户及密码,默认均为 zabbix;MYSQL_USER_FILE/MYSQL_PASSWORD_FILE:从文件读取用户/密码(适用于 Docker Swarm/Kubernetes 密钥管理),与 MYSQL_USER/MYSQL_PASSWORD 互斥,只能选一种。示例:使用文件传递凭据(非 Swarm/K8s 环境)
bashdocker run --name some-zabbix-server-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=/var/run/secrets/MYSQL_PASSWORD \ --init -d docker.xuanyuan.run/zabbix/zabbix-server-mysql:tag
示例:使用 Docker Swarm 密钥
bashprintf "zabbix" | docker secret create MYSQL_USER - # 创建用户密钥 printf "zabbix" | docker secret create MYSQL_PASSWORD - # 创建密码密钥 docker run --name some-zabbix-server-mysql \ -e DB_SERVER_HOST="some-mysql-server" \ -e MYSQL_USER_FILE=/run/secrets/MYSQL_USER \ -e MYSQL_PASSWORD_FILE=/run/secrets/MYSQL_PASSWORD \ --init -d docker.xuanyuan.run/zabbix/zabbix-server-mysql:tag
ZBX_LOADMODULE:逗号分隔的可加载模块列表(需配合 /var/lib/zabbix/modules 卷),如 dummy1.so,dummy2.so;ZBX_DEBUGLEVEL:调试级别(0-5,默认 3),对应 zabbix_server.conf 中的 DebugLevel;ZBX_TIMEOUT:检查超时时间(默认 4 秒);ZBX_JAVAGATEWAY_ENABLE:是否启用 Java Gateway(默认 false)。更多变量(如 ZBX_STARTPOLLERS、ZBX_CACHESIZE 等)及默认值见下方,均对应 zabbix_server.conf 中的参数:
ZBX_ALLOWUNSUPPORTEDDBVERSIONS=0 # 支持非兼容数据库版本(6.0.0+) ZBX_DEBUGLEVEL=3 # 调试级别(0-5) ZBX_TIMEOUT=4 # 检查超时时间(秒) ZBX_STARTPOLLERS=5 # 轮询进程数 ZBX_STARTPINGERS=1 # ICMP 检查进程数 ZBX_CACHESIZE=8M # 缓存大小 ZBX_HISTORYCACHESIZE=16M # 历史数据缓存大小
完整参数说明可参考 zabbix_server.conf 官方文档。
/usr/lib/zabbix/alertscripts自定义告警脚本目录,对应 zabbix_server.conf 中的 AlertScriptsPath。
/usr/lib/zabbix/externalscripts外部检查脚本目录(用于 Item 类型为“外部检查”),对应 ExternalScripts。
/var/lib/zabbix/modules存放可加载模块,配合 ZBX_LOADMODULE 变量扩展功能。
/var/lib/zabbix/enc存放 TLS 相关文件(如 CA 证书、密钥),需通过 ZBX_TLSCAFILE 等变量指定文件名。
/var/lib/zabbix/ssh_keysSSH 检查/动作的密钥目录,对应 SSHKeyLocation。
/var/lib/zabbix/snmptrapssnmp traps.log 文件目录,需与 zabbix-snmptraps 容器共享,并设置 ZBX_ENABLE_SNMP_TRAPS=true 启用 SNMP traps 处理。
zabbix-server-mysql:alpine-<version>基于 Alpine Linux,体积极小(~5MB 基础镜像),适合对镜像大小敏感的场景。使用 musl libc,部分依赖 glibc 的软件可能不兼容。
zabbix-server-mysql:ubuntu-<version>基于 Ubuntu,默认推荐版本。使用 glibc,兼容性更广,适合大多数通用场景。
zabbix-server-mysql:ol-<version>基于 Oracle Linux,针对 Oracle 工作负载优化,支持 Ksplice 内核热补丁、DTrace 诊断等 Oracle 特有功能。
官方支持 Docker 1.12.0 及以上版本,1.6 及以上旧版本提供有限支持。
升级 Docker 可参考 [Docker 官方安装文档] 。
镜像文档存放于 [zabbix-docker 仓库的 server-mysql/ 目录] ,提交 PR 前建议先阅读仓库 [README.md] 。
使用中遇到问题可通过 [GitHub Issue] 提交。
欢迎提交功能改进、bug 修复或更新,建议先通过 GitHub Issue 讨论方案。
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务