install mysql
docker run --name zabbix-mysql --hostname zabbix-mysql \
-e MYSQL_ROOT_PASSWORD="root" \
-e MYSQL_USER="zabbix" \
-e MYSQL_PASSWORD="464147love" \
-e MYSQL_DATABASE="zabbix" \
-p 3306:3306 \
-d mysql:latest \
--character-set-server=utf8 --collation-server=utf8_bin
Install zabbix-server
docker run --name zabbix-server-mysql --hostname zabbix-server-mysql \
--link zabbix-mysql:mysql \
-e DB_SERVER_HOST="mysql" \
-e MYSQL_USER="zabbix" \
-e MYSQL_DATABASE="zabbix" \
-e MYSQL_PASSWORD="464147love" \
-v /Users/ct/etc/docker/zabbix/alertscripts:/usr/lib/zabbix/alertscripts \
-v /Users/ct/etc/docker/zabbix/externalscripts:/usr/lib/zabbix/externalscripts \
-p 10051:10051 \
-d \
zabbix/zabbix-server-mysql
Install web-nginx
docker run --name zabbix-web-nginx-mysql --hostname zabbix-web-nginx-mysql \
--link zabbix-mysql:mysql \
--link zabbix-server-mysql:zabbix-server \
-e DB_SERVER_HOST="mysql" \
-e MYSQL_USER="zabbix" \
-e MYSQL_PASSWORD="464147love" \
-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
#Note that mysql and nginx do not map data volumes. In the actual production environment, it is best to map data to prevent data loss.
Browser access http://ip:8000
Default login username and password:
username:Admin
password:zabbix
Install docker-zabbix-agent and link zabbix-server
docker run --name zabbix-agent --link zabbix-server-mysql:zabbix-server -d zabbix/zabbix-agent:latest