docker部署zabbix监控系统(nginx mysql)

本次使用docker搭建zabbix的组合是mysql+docker+zabix-server

1. 先安装数据库mysql

docker run --name zabbix-mysql-server --hostname zabbix-mysql-server 
-e MYSQL_ROOT_PASSWORD="123456" 
-e MYSQL_USER="zabbix" 
-e MYSQL_PASSWORD="123456" 
-e MYSQL_DATABASE="zabbix" 
-p 3306:3306  
-d 
mysql

2. 创建zabbix-server

docker run  --name zabbix-server-mysql --hostname zabbix-server-mysql 
--link zabbix-mysql-server:mysql 
-e DB_SERVER_HOST="mysql" 
-e MYSQL_USER="zabbix" 
-e MYSQL_DATABASE="zabbix" 
-e MYSQL_PASSWORD="123456" 
-v /etc/localtime:/etc/localtime:ro 
-v /data/docker/zabbix/alertscripts:/usr/lib/zabbix/alertscripts 
-v /data/docker/zabbix/externalscripts:/usr/lib/zabbix/externalscripts 
-p 10051:10051 
-d 
zabbix/zabbix-server-mysql

3. 最后web-nginx

最后安装zabbix-web-nginx
docker run --name zabbix-web-nginx-mysql --hostname zabbix-web-nginx-mysql 
--link zabbix-mysql-server:mysql 
--link zabbix-server-mysql:zabbix-server 
-e DB_SERVER_HOST="mysql" 
-e MYSQL_USER="zabbix" 
-e MYSQL_PASSWORD="123456" 
-e MYSQL_DATABASE="zabbix" 
-e ZBX_SERVER_HOST="zabbix-server" 
-e PHP_TZ="Asia/Shanghai" 
-p 8000:80 
-p 8443:443 
-d 
zabbix/zabbix-web-nginx-mysql

登录访问测试

浏览器访问ip:8000查看
默认登录
username:Admin
password:zabbix

这里说明下,mysql没做数据卷的映射,nginx也没做数据卷的映射,在实际生产环境下,最好做数据映射。防止数据丢失。

docker-zabbbix-agent的安装以及链接zabbix-server

docker run --name zabbix-agent --link zabbix-server-mysql:zabbix-server -d zabbix/zabbix-agent:latest

最后需要在web端将,zabbix-agent添加到zabbix-server的host列表里面。

监控