Skip to content

Instantly share code, notes, and snippets.

@balvinder294
Created July 11, 2019 11:39
Show Gist options
  • Save balvinder294/c6a9d0421d231c56bbc9b39afe10cd9f to your computer and use it in GitHub Desktop.
Save balvinder294/c6a9d0421d231c56bbc9b39afe10cd9f to your computer and use it in GitHub Desktop.
Zabbix running in Docker Compose with Postgres, Graffana, Adminer
version: '3.1'
services:
postgres-server: # The Postgres Database Service
image: postgres:latest
restart: always
environment: # Username, password and database name variables
POSTGRES_USER: zabbix
POSTGRES_PASSWORD: zabbix
POSTGRES_DB: zabbix
PG_DATA: /var/lib/postgresql/data/pgdata #data storage
zabbix-server: # The main Zabbix Server Software Service
image: zabbix/zabbix-server-pgsql:ubuntu-latest
restart: always
environment: # The Postgres database value variable
POSTGRES_USER: zabbix
POSTGRES_PASSWORD: zabbix
POSTGRES_DB: zabbixNew
ZBX_HISTORYSTORAGETYPES: log,text #Zabbix configuration variables
ZBX_DEBUGLEVEL: 1
ZBX_HOUSEKEEPINGFREQUENCY: 1
ZBX_MAXHOUSEKEEPERDELETE: 5000
depends_on:
- postgres-server
volumes: # Volumes for scripts and related files you can add
- /usr/lib/zabbix/alertscripts:/usr/lib/zabbix/alertscripts
zabbix-web: # The main Zabbix web UI or interface
image: zabbix/zabbix-web-nginx-pgsql:ubuntu-latest
restart: always
environment: # Postgre database variables
POSTGRES_USER: zabbix
POSTGRES_PASSWORD: zabbix
POSTGRES_DB: zabbixNew
ZBX_SERVER_HOST: zabbix-server # Zabbix related and Php variables
ZBX_POSTMAXSIZE: 64M
PHP_TZ: "Asia/Kolkata"
ZBX_MAXEXECUTIONTIME: 500
depends_on:
- postgres-server
- zabbix-server
ports: # Port where Zabbix UI is available
- 8090:80
zabbix-agent: # Zabbix agent service that tracks usage and send to zabbix server
image: zabbix/zabbix-agent:latest
privileged: true #access mode for allowing resource access
network_mode: "host"
restart: unless-stopped
environment:
- ZBX_SERVER_HOST=127.0.0.1 #the IP/Dns of Zabbix server
adminer: #Optional for accessing databases
image: adminer
restart: always
ports:
- 8080:8080
grafana-xxl: #optional more functional and creative UI
image: monitoringartist/grafana-xxl:latest
ports:
- 3000:3000
@antigenius0910
Copy link

this is great! just somehow niginx wasn't responding for some unknown reason.

yen@yens-MacBook-Pro:~/TimescaleDB_zabbix$ lsof -nP -iTCP -sTCP:LISTEN 
COMMAND     PID USER   FD   TYPE             DEVICE SIZE/OFF NODE NAME
com.docke 37809  yen   21u  IPv4 0xbf2a7e5648d09f85      0t0  TCP *:3000 (LISTEN)
com.docke 37809  yen   22u  IPv6 0xbf2a7e56389a4b0d      0t0  TCP [::1]:3000 (LISTEN)
com.docke 37809  yen   23u  IPv4 0xbf2a7e564e90e56d      0t0  TCP *:8080 (LISTEN)
com.docke 37809  yen   24u  IPv6 0xbf2a7e5649a64e2d      0t0  TCP [::1]:8080 (LISTEN)
com.docke 37809  yen   26u  IPv4 0xbf2a7e5649120f85      0t0  TCP *:8090 (LISTEN)
com.docke 37809  yen   28u  IPv6 0xbf2a7e5649a647cd      0t0  TCP [::1]:8090 (LISTEN)

yen@yens-MacBook-Pro:~/TimescaleDB_zabbix$ curl http://localhost:8090
curl: (52) Empty reply from server

@antigenius0910
Copy link

Found problem.

since the latest zabbix web open port on 8080
we only need to modify below code and it will work

 41     ports:    # Port where Zabbix UI is available
 42       - 8090:8080
$ curl http://localhost:8090 | head
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  3598  100  3598    0     0   113k      0 --:--:-- --:--:-- --:--:--  113k
<!DOCTYPE html>
<html>
	<head>
		<meta http-equiv="X-UA-Compatible" content="IE=Edge"/>
		<meta charset="utf-8" />
		<meta name="viewport" content="width=device-width, initial-scale=1">
		<meta name="Author" content="Zabbix SIA" />
		<title>Zabbix docker: Zabbix</title>
		<link rel="icon" href="favicon.ico">
		<link rel="apple-touch-icon-precomposed" sizes="76x76" href="assets/img/apple-touch-icon-76x76-precomposed.png">

@unity255
Copy link

unity255 commented Jul 15, 2021

DOCKER-COMPOSE.YML FOR CENTOS7

version: '3.4'
services:
postgres-server: # The Postgres Database Service
image: postgres:latest
restart: always
environment: # Username, password and database name variables
POSTGRES_USER: zabbix
POSTGRES_PASSWORD: zabbix
POSTGRES_DB: zabbix
PG_DATA: /var/lib/postgresql/data/pgdata #data storage
zabbix-server: # The main Zabbix Server Software Service
image: zabbix/zabbix-server-pgsql:centos-5.4-latest #zabbix/zabbix-server-pgsql:ubuntu-latest
restart: always
environment: # The Postgres database value variable
POSTGRES_USER: zabbix
POSTGRES_PASSWORD: zabbix
POSTGRES_DB: zabbix
ZBX_HISTORYSTORAGETYPES: log,text #Zabbix configuration variables
ZBX_DEBUGLEVEL: 1
ZBX_HOUSEKEEPINGFREQUENCY: 1
ZBX_MAXHOUSEKEEPERDELETE: 5000
depends_on:
- postgres-server
volumes: # Volumes for scripts and related files you can add
- /usr/lib/zabbix/alertscripts:/usr/lib/zabbix/alertscripts

zabbix-web: # The main Zabbix web UI or interface
image: zabbix/zabbix-web-nginx-pgsql:centos-5.4-latest #zabbix/zabbix-web-nginx-pgsql:ubuntu-latest
restart: always
environment: # Postgre database variables
POSTGRES_USER: zabbix
POSTGRES_PASSWORD: zabbix
POSTGRES_DB: zabbix
ZBX_SERVER_HOST: zabbix-server # Zabbix related and Php variables
ZBX_POSTMAXSIZE: 64M
PHP_TZ: "Europe/Moscow"
ZBX_MAXEXECUTIONTIME: 500
depends_on:
- postgres-server
- zabbix-server
ports: # Port where Zabbix UI is available
- 8090:8080
zabbix-agent: # Zabbix agent service that tracks usage and send to zabbix server
image: zabbix/zabbix-agent:latest
privileged: true #access mode for allowing resource access
network_mode: "host"
restart: unless-stopped
environment:
- ZBX_SERVER_HOST=yourIP#the IP/Dns of Zabbix server
adminer: #Optional for accessing databases
image: adminer
restart: always
ports:
- 8080:8080
grafana-xxl: #optional more functional and creative UI
image: monitoringartist/grafana-xxl:latest
ports:
- 3000:8080

@Kent85
Copy link

Kent85 commented Mar 24, 2023

grafana-xxl: #optional more functional and creative UI
image: monitoringartist/grafana-xxl:latest
ports:

  • 3000:8080 ??? is it right?

@vjranagit
Copy link

`version: '3.1'
services:
postgres-server: # The Postgres Database Service
image: postgres:latest
restart: always
environment: # Username, password and database name variables
POSTGRES_USER: zabbix
POSTGRES_PASSWORD: zabbix
POSTGRES_DB: zabbixNew
PG_DATA: /var/lib/postgresql/data/pgdata #data storage
ports:
- 5432:5432

zabbix-server: # The main Zabbix Server Software Service
image: zabbix/zabbix-server-pgsql:ubuntu-latest
restart: always
environment: # The Postgres database value variable
POSTGRES_USER: zabbix
POSTGRES_PASSWORD: zabbix
POSTGRES_DB: zabbixNew
ZBX_HISTORYSTORAGETYPES: log,text #Zabbix configuration variables
ZBX_DEBUGLEVEL: 1
ZBX_HOUSEKEEPINGFREQUENCY: 1
ZBX_MAXHOUSEKEEPERDELETE: 5000
depends_on:
- postgres-server

volumes: # Volumes for scripts and related files you can add

- /usr/lib/zabbix/alertscripts:/usr/lib/zabbix/alertscripts

ports:    # Port where Zabbix UI is available
  - 1050:1050
  - 1051:1051

zabbix-web: # The main Zabbix web UI or interface
image: zabbix/zabbix-web-nginx-pgsql:ubuntu-latest
restart: always
environment: # Postgre database variables
POSTGRES_USER: zabbix
POSTGRES_PASSWORD: zabbix
POSTGRES_DB: zabbixNew
ZBX_SERVER_HOST: zabbix-server # Zabbix related and Php variables
ZBX_POSTMAXSIZE: 64M
PHP_TZ: "America/New_York"
ZBX_MAXEXECUTIONTIME: 500
depends_on:
- postgres-server
- zabbix-server
ports: # Port where Zabbix UI is available
- 8090:8080
adminer: #Optional for accessing databases
image: adminer
restart: always
ports:
- 8080:8080
`

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment