Zabbix Docker-Compose Setup
Zabbix Server 5.4
Docker Compose Setup
This article is based on a fork of the official Zabbix Server Repo with a few changes for a production setup:
Changes:
- Removed everything I don't need - this file only sets up the Zabbix Server with a Postgres backend, the Zabbix Server Dashboard frontend using NGINX and an Zabbix Agent 1 to monitor the server itself.
- Added container names, container restart policies and fixed IP addresses (The Zabbix Agent Container IP is set to
172.16.239.106
- MAKE SURE to change the agent address from default127.0.0.1
to172.16.239.106
inside the Server Dashboard! see below). - Added an additional external network
ingress_gateway
that will be used by the system ingress to direct traffic to Zabbix. The web frontend container opens both port8080
and8443
to debug the initial setup (SSL will be handled by the Ingress and is not configured on port8443
). The ports can be commented out later. Make sure to either remove theingress_gateway
from the configuration file or add it manuallydocker network create ingress_gateway
before starting the containers.
Run
Before running the compose file, check the ./env_vars
files and change what needs to be changed (passwords!).
docker network create ingress_gateway
docker-compose up
Check the console output for errors and visit the Zabbix Dashboard on your server IP on port :8081
.