本文是网友提供一套完整的Zabbix监控系统Docker化部署方案,涵盖MySQL数据库、Zabbix Server、Web管理界面及Agent客户端的快速搭建步骤。指南详细说明容器创建、环境变量配置、时区调整与网络连接等关键操作,支持版本为MySQL 5.7与Zabbix 5.4.0。通过预置数据库与用户信息、容器互联及端口映射,实现即装即用,适合本地测试与生产环境快速搭建监控平台。适用于运维人员、DevOps工程师及监控系统初学者,助力企业级监控系统高效部署。

1.创建工作目录
bash
mkdir -p /usr/local/docker/mysql
cd /usr/local/docker/mysql
2.创建mysql容器实例
bash
docker run -ti -d --restart=always --name mysql-server -t \
-e MYSQL_DATABASE="zabbix" \
-e MYSQL_USER="zabbixadmin" \
-e MYSQL_PASSWORD="zabbixpwd" \
-e MYSQL_ROOT_PASSWORD="zabbixroot" \
-v /usr/local/docker/mysql:/var/lib/mysql \
-v /etc/localtime:/etc/localtime \
-d mysql:5.7 \
--character-set-server=utf8 \
--collation-server=utf8_bin
3.创建zabbix server实例
bash
docker run -ti -d --restart=always --name zabbix-server-mysql -t \
-e DB_SERVER_HOST="mysql-server" \
-e MYSQL_DATABASE="zabbix" \
-e MYSQL_USER="zabbixadmin" \
-e MYSQL_PASSWORD="zabbixpwd" \
-e MYSQL_ROOT_PASSWORD="zabbixroot" \
-v /etc/localtime:/etc/localtime \
--link mysql-server:mysql \
-p 10051:10051 \
-d zabbix/zabbix-server-mysql:centos-5.4.0
4.创建zabbix web实例
bash
docker run -ti -d --restart=always --name zabbix-web-nginx-mysql -t \
-e DB_SERVER_HOST="mysql-server" \
-e MYSQL_DATABASE="zabbix" \
-e MYSQL_USER="zabbixadmin" \
-e MYSQL_PASSWORD="zabbixpwd" \
-e MYSQL_ROOT_PASSWORD="zabbixroot" \
-v /etc/localtime:/etc/localtime \
--link mysql-server:mysql \
--link zabbix-server-mysql:zabbix-server \
-p 80:8080 \
-d zabbix/zabbix-web-nginx-mysql:centos-5.4.0
5.修改时区
bash
docker exec -it zabbix-web-nginx-mysql /bin/bash
vi /etc/php-fpm.d/zabbix.conf
修改php_value[date.timezone]=Asia/Shanghai
wq
6.安装agent
bash
docker run -ti -d --restart=always --name zabbix-agent \
-e ZBX_HOSTNAME="local-agent" \
-e ZBX_SERVER_HOST="your server ip" \
--network=host \
--restart unless-stopped \
zabbix/zabbix-agent:5.4-centos-latest