!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 \ 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
通过Docker日志命令查看Web界面运行日志:
consoledocker logs zabbix-web
通过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: 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: 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: *** depends_on: - db restart: always networks: - zabbix-net web: image: 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时区(参考PHP时区列表) | 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":"[***]"}) | - |
| 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引擎以获得最佳兼容性和性能,升级方法参考Docker***文档。
来自真实用户的反馈,见证轩辕镜像的优质服务
免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
在 Linux 系统配置镜像加速服务
在 Docker Desktop 配置镜像加速
Docker Compose 项目配置加速
Kubernetes 集群配置 Containerd
在宝塔面板一键配置镜像加速
Synology 群晖 NAS 配置加速
飞牛 fnOS 系统配置镜像加速
极空间 NAS 系统配置加速服务
爱快 iKuai 路由系统配置加速
绿联 NAS 系统配置镜像加速
QNAP 威联通 NAS 配置加速
Podman 容器引擎配置加速
HPC 科学计算容器配置加速
ghcr、Quay、nvcr 等镜像仓库
无需登录使用专属域名加速
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429