mirror of
https://github.com/Dokploy/templates.git
synced 2026-03-12 01:56:43 -05:00
feat(zabbix): Add Zabbix monitoring blueprint with Docker Compose, template, and metadata (#450)
Added a complete Zabbix 7.4 blueprint including Docker Compose setup for PostgreSQL, server, web interface, SNMP traps, and Java gateway; configuration template for environment variables; logo image; and metadata entry for easy deployment and monitoring capabilities.
This commit is contained in:
85
blueprints/zabbix/docker-compose.yml
Normal file
85
blueprints/zabbix/docker-compose.yml
Normal file
@@ -0,0 +1,85 @@
|
||||
version: "3.8"
|
||||
|
||||
services:
|
||||
postgres:
|
||||
image: postgres:16-alpine
|
||||
restart: unless-stopped
|
||||
environment:
|
||||
POSTGRES_DB: ${POSTGRES_DB}
|
||||
POSTGRES_USER: ${POSTGRES_USER}
|
||||
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
|
||||
volumes:
|
||||
- zabbix-postgres-data:/var/lib/postgresql/data
|
||||
healthcheck:
|
||||
test: ["CMD-SHELL", "pg_isready -U ${POSTGRES_USER} -d ${POSTGRES_DB}"]
|
||||
interval: 10s
|
||||
timeout: 5s
|
||||
retries: 5
|
||||
|
||||
zabbix-java-gateway:
|
||||
image: zabbix/zabbix-java-gateway:alpine-7.4-latest
|
||||
restart: unless-stopped
|
||||
|
||||
zabbix-snmptraps:
|
||||
image: zabbix/zabbix-snmptraps:alpine-7.4-latest
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
- zabbix-snmptraps:/var/lib/zabbix/snmptraps
|
||||
- zabbix-mibs:/var/lib/zabbix/mibs
|
||||
|
||||
zabbix-server-pgsql:
|
||||
image: zabbix/zabbix-server-pgsql:alpine-7.4-latest
|
||||
restart: unless-stopped
|
||||
environment:
|
||||
DB_SERVER_HOST: postgres
|
||||
POSTGRES_USER: ${POSTGRES_USER}
|
||||
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
|
||||
POSTGRES_DB: ${POSTGRES_DB}
|
||||
ZBX_ENABLE_SNMP_TRAPS: "true"
|
||||
ZBX_JAVAGATEWAY: zabbix-java-gateway
|
||||
depends_on:
|
||||
postgres:
|
||||
condition: service_healthy
|
||||
zabbix-java-gateway:
|
||||
condition: service_started
|
||||
zabbix-snmptraps:
|
||||
condition: service_started
|
||||
volumes:
|
||||
- zabbix-server-data:/var/lib/zabbix
|
||||
- zabbix-snmptraps:/var/lib/zabbix/snmptraps
|
||||
- zabbix-mibs:/var/lib/zabbix/mibs
|
||||
expose:
|
||||
- 10051
|
||||
healthcheck:
|
||||
test: ["CMD", "pgrep", "zabbix_server"]
|
||||
interval: 10s
|
||||
timeout: 5s
|
||||
retries: 5
|
||||
|
||||
zabbix-web-nginx-pgsql:
|
||||
image: zabbix/zabbix-web-nginx-pgsql:alpine-7.4-latest
|
||||
restart: unless-stopped
|
||||
environment:
|
||||
DB_SERVER_HOST: postgres
|
||||
POSTGRES_USER: ${POSTGRES_USER}
|
||||
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
|
||||
POSTGRES_DB: ${POSTGRES_DB}
|
||||
ZBX_SERVER_HOST: zabbix-server-pgsql
|
||||
PHP_TZ: ${PHP_TZ}
|
||||
ZBX_SERVER_NAME: ${ZBX_SERVER_NAME}
|
||||
depends_on:
|
||||
zabbix-server-pgsql:
|
||||
condition: service_healthy
|
||||
expose:
|
||||
- 8080
|
||||
healthcheck:
|
||||
test: ["CMD", "curl", "-f", "http://localhost:8080/"]
|
||||
interval: 30s
|
||||
timeout: 10s
|
||||
retries: 3
|
||||
|
||||
volumes:
|
||||
zabbix-postgres-data:
|
||||
zabbix-server-data:
|
||||
zabbix-snmptraps:
|
||||
zabbix-mibs:
|
||||
BIN
blueprints/zabbix/image.png
Normal file
BIN
blueprints/zabbix/image.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 15 KiB |
17
blueprints/zabbix/template.toml
Normal file
17
blueprints/zabbix/template.toml
Normal file
@@ -0,0 +1,17 @@
|
||||
[variables]
|
||||
main_domain = "${domain}"
|
||||
postgres_password = "${password:32}"
|
||||
|
||||
[config]
|
||||
|
||||
[[config.domains]]
|
||||
serviceName = "zabbix-web-nginx-pgsql"
|
||||
port = 8080
|
||||
host = "${main_domain}"
|
||||
|
||||
[config.env]
|
||||
POSTGRES_DB = "zabbix"
|
||||
POSTGRES_USER = "zabbix"
|
||||
POSTGRES_PASSWORD = "${postgres_password}"
|
||||
PHP_TZ = "UTC"
|
||||
ZBX_SERVER_NAME = "Dokploy Zabbix Monitoring"
|
||||
18
meta.json
18
meta.json
@@ -5377,6 +5377,24 @@
|
||||
"webui"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "zabbix",
|
||||
"name": "Zabbix",
|
||||
"version": "7.4",
|
||||
"description": "Zabbix is an open-source enterprise-grade monitoring platform for networks, servers, virtual machines, and cloud services. This template includes PostgreSQL, Nginx frontend, SNMP traps, and Java gateway.",
|
||||
"logo": "image.png",
|
||||
"links": {
|
||||
"github": "https://github.com/zabbix/zabbix-docker",
|
||||
"website": "https://www.zabbix.com/",
|
||||
"docs": "https://www.zabbix.com/documentation/current/en/manual/installation/containers"
|
||||
},
|
||||
"tags": [
|
||||
"monitoring",
|
||||
"infrastructure",
|
||||
"observability",
|
||||
"alerting"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "zipline",
|
||||
"name": "Zipline",
|
||||
|
||||
Reference in New Issue
Block a user