Features
- Zabbix Server with Alpine base image
- Zabbix Web Server with Nginx as frontend
- Using PostgreSQL (timescaledb)
- Grafana for Dashboard
How to deploy
- Create a directory or folder and let named it “
zabbix-standalone
“
mkdir /srv/zabbix-standalone
cd /srv/zabbix-standalone/
- Download compose file settings from my gitlab project
SRC_URL=https://gitlab.com/samkuonssp/advanced-linux-system/-/raw/master/Docker/Deployment%20App/zabbix-docker-nginx-postgres-standalone
curl -Lk ${SRC_URL}/docker-compose.yml -o docker-compose.yml
curl -Lk ${SRC_URL}/zabbix-pgsql.env -o zabbix-pgsql.env
curl -Lk ${SRC_URL}/zabbix-server.env -o zabbix-server.env
curl -Lk ${SRC_URL}/zabbix-web.env -o zabbix-web.env
- Spin up
Zabbix Standalone
by the following commands:
docker-compose -p zabbix up -d
Access to Zabbix Web UI
- Default user “Admin” and password “zabbix”
- URL: http://<your_docker_ip_or_name_or_address>, i.e: http://192.168.100.11
- After login, go to “Configuration > Hosts > Zabbix server”. In the interfaces setting, set Agent “DNS name: zabbix-agent” and change “connect to: DNS”. Finally just click on update to save the configuration and wait a few minutes to see the status.
Access to Grafana (Dashboard)
- Default user “admin” and password “admin”
- URL: http://<your_docker_ip_or_name_or_address>:3000, i.e: http://192.168.100.11:3000
- To add Zabbix (Data Source) to grafana, go to “Configuration > Plugins > Search and enable Zabbix”
- Back and go to “Configuration > Data Sources > Zabbix > Settings” then define:
URL: http://<your_docker_ip_or_name_or_address>/api_jsonrpc.php. i.e: http://192.168.100.11/api_jsonrpc.php
Username: <your_zabbix_user, i.e: Admin>
Password: <your_zabbix_password, i.e: zabbix>
- Click on “Save & Test” then it will show success or any error.
- You can import pre-build zabbix dashboard by “Zabbix Data Source > Dashboards > Import all pre-dashboard” or you can create your own.
Thanks!