Files
New_Zabbix/docker-compose.yml
2026-02-22 14:22:20 +03:00

81 lines
2.3 KiB
YAML

services:
postgres-server:
image: postgres:16-alpine
restart: unless-stopped
environment:
POSTGRES_DB: zabbix
POSTGRES_USER: zabbix
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
command: postgres -c fsync=off -c full_page_writes=off -c wal_buffers=-1 -c shared_buffers=256MB -c max_connections=100
networks:
- zabbix-net
volumes:
- postgres-data:/var/lib/postgresql/data:Z
healthcheck:
test: ["CMD-SHELL", "pg_isready -U zabbix -d zabbix"]
interval: 30s
timeout: 10s
retries: 5
zabbix-server:
build:
context: .
dockerfile: Dockerfile
restart: unless-stopped
environment:
DB_SERVER_HOST: postgres-server
POSTGRES_DB: zabbix
POSTGRES_USER: zabbix
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
ZBX_TELEGRAM_TG_TOKEN: ${ZBX_TELEGRAM_TG_TOKEN}
ZBX_TELEGRAM_API_URL: ${ZBX_TELEGRAM_API_URL}
ZBX_TELEGRAM_API_LOGIN: ${ZBX_TELEGRAM_API_LOGIN}
ZBX_TELEGRAM_API_PASS: ${ZBX_TELEGRAM_API_PASS}
ZBX_TELEGRAM_PROXY: ${ZBX_TELEGRAM_PROXY}
ZBX_TELEGRAM_PROXY_SCHEME: ${ZBX_TELEGRAM_PROXY_SCHEME}
ZBX_TELEGRAM_PROXY_URL: ${ZBX_TELEGRAM_PROXY_URL}
ZBX_TELEGRAM_THREAD: ${ZBX_TELEGRAM_THREAD}
networks:
- zabbix-net
depends_on:
postgres-server:
condition: service_healthy
ports:
- "45017:10051"
volumes:
- zabbix-data:/var/lib/zabbix
# - ./zbxTelegram_config.py:/usr/lib/zabbix/alertscripts/zbxTelegram_config.py
# - telegram_cache:/usr/lib/zabbix/alertscripts/zbxTelegram_files
- ./alertscripts:/usr/lib/zabbix/alertscripts
zabbix-web:
image: zabbix/zabbix-web-nginx-pgsql:alpine-latest
restart: unless-stopped
environment:
DB_SERVER_HOST: postgres-server
POSTGRES_DB: zabbix
POSTGRES_USER: zabbix
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
ZBX_SERVER_HOST: zabbix-server
PHP_TZ: Europe/Helsinki
networks:
- zabbix-net
ports:
- "45016:8080"
depends_on:
postgres-server:
condition: service_healthy
zabbix-server:
condition: service_started
volumes:
postgres-data:
driver: local
zabbix-data:
driver: local
telegram_cache:
driver: local
networks:
zabbix-net:
driver: bridge