Skip to content

Instantly share code, notes, and snippets.

@5kr1p7
Last active August 19, 2022 23:05
Show Gist options
  • Save 5kr1p7/536e730c43735adc0d2a354e60f26c75 to your computer and use it in GitHub Desktop.
Save 5kr1p7/536e730c43735adc0d2a354e60f26c75 to your computer and use it in GitHub Desktop.
Run Zabbix+PostgreSQL in Docker containers

Run Full Zabbix in Docker

Create Docker network

docker network create --subnet 172.20.0.0/16 --ip-range 172.20.240.0/20 zabbix-net

Run PostgreSQL server

docker run --name postgres-server -t \
      -e POSTGRES_USER="zabbix" \
      -e POSTGRES_PASSWORD="Z4bBixP4s$" \
      -e POSTGRES_DB="zabbix" \
      --network=zabbix-net \
      -e PGDATA=/var/lib/postgresql/data/pgdata \
      -v /opt/postgres-data:/var/lib/postgresql/data \
      --restart unless-stopped \
      -d postgres:latest

Run Zabbix SNMP Trap daemon

docker run --name zabbix-snmptraps -t \
      -v /zbx_instance/snmptraps:/var/lib/zabbix/snmptraps:rw \
      -v /var/lib/zabbix/mibs:/usr/share/snmp/mibs:ro \
      --network=zabbix-net \
      -p 162:1162/udp \
      --restart unless-stopped \
      -d zabbix/zabbix-snmptraps:6.0-alpine-latest

Run Zabbix server (w PostgreSQL)

docker run --name zabbix-server-pgsql -t \
      -e DB_SERVER_HOST="postgres-server" \
      -e POSTGRES_USER="zabbix" \
      -e POSTGRES_PASSWORD="Z4bBixP4s$" \
      -e POSTGRES_DB="zabbix" \
      -e ZBX_ENABLE_SNMP_TRAPS="true" \
      --network=zabbix-net \
      -p 10051:10051 \
      --volumes-from zabbix-snmptraps \
      --restart unless-stopped \
      -d zabbix/zabbix-server-pgsql:6.0-alpine-latest

Run web interface for Zabbix server (w PostgreSQL)

docker run --name zabbix-web-nginx-pgsql -t \
      -e ZBX_SERVER_HOST="zabbix-server-pgsql" \
      -e DB_SERVER_HOST="postgres-server" \
      -e POSTGRES_USER="zabbix" \
      -e POSTGRES_PASSWORD="Z4bBixP4s$" \
      -e POSTGRES_DB="zabbix" \
      --network=zabbix-net \
      -p 443:8443 \
      -p 80:8080 \
      -v /etc/ssl/nginx:/etc/ssl/nginx:ro \
      --restart unless-stopped \
      -d zabbix/zabbix-web-nginx-pgsql:6.0-alpine-latest
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment