Linux/Zabbix

Docker compose로 간편하게 Zabbix 설치하기(7.4 이후 버전)

꾸적꾸적 2025. 7. 17. 12:23

https://gguzuck.tistory.com/81

 

Docker compose로 간편하게 Zabbix 설치하기(~7.4 이전버전)

docker-compose.yml 파일 만들어서 사용 services: # Zabbix database zabbix-db: container_name: zabbix-db image: mariadb:10.11.4 restart: always volumes: - ./zabbix-db/mariadb:/var/lib/mysql:rw - ./zabbix-db/backups:/backups command: - mariadbd - --ch

blog.torang.net

 

에서 이어지는 글.

 

7.2.0 등, 과거 버전을 사용하다가 Zabbix 버전 업그레이드를 진행하여 7.4.0으로 올라가게 되면,

서버가 작동하지 않습니다. 라는 오류가 발생하게 된다.

(영문 : Zabbix server is not running)

 

이런 현상을 발견하게 되어 고민하고 검색을 계속 해본 결과 정답은 포럼에서 발견했다.

 

https://support.zabbix.com/browse/ZBX-26625?_gl=1%2A94mig6%2A_gcl_au%2AMTQxNTg1MzE3My4xNzUyNzEzMDY2%2A_ga%2AMTA2NzA4OTM4LjE3NTI3MTMwNjg.%2A_ga_1F6WJN99ZG%2AczE3NTI3MTMwNjckbzEkZzEkdDE3NTI3MTMxNjYkajYwJGwwJGgw

 

Loading...

System information panel not working and zabbix is saying that server is not working

support.zabbix.com

 

zabbix 사용자 포럼 쪽에서도 많은 토론이 이루어 진 부분인데,

결론은, NodeAddress 라는 매개변수를 제대로 이용하지 못한 오류였다.

 

따라서, 우리는 해당 매개변수를 docker-compose.yml 에 추가하여

이후에도 오류 없이 잘 작동하도록 구현하면 된다.

 

---

 

services:
  # Zabbix database
  zabbix-db:
    container_name: zabbix-db
    image: mariadb:10.11.4
    restart: always
    volumes:
      - ./zabbix-db/mariadb:/var/lib/mysql:rw
      - ./zabbix-db/backups:/backups
    command:
      - mariadbd
      - --character-set-server=utf8mb4
      - --collation-server=utf8mb4_bin
      - --default-authentication-plugin=mysql_native_password
    environment:
      - MYSQL_USER=zabbix
      - MYSQL_PASSWORD=zabbix
      - MYSQL_ROOT_PASSWORD=zabbix
    stop_grace_period: 1m



  # Zabbix server
  zabbix-server:
    ㅋcontainer_name: zabbix-server
    image: zabbix/zabbix-server-mysql:latest
    restart: always
    ports:
      - 10051:10051
    volumes:
      - /etc/localtime:/etc/localtime:ro
      - ./zabbix-server/alertscripts:/usr/lib/zabbix/alertscripts:ro
      - ./zabbix-server/externalscripts:/usr/lib/zabbix/externalscripts:ro
      - ./zabbix-server/dbscripts:/var/lib/zabbix/dbscripts:ro
      - ./zabbix-server/export:/var/lib/zabbix/export:rw
      - ./zabbix-server/modules:/var/lib/zabbix/modules:ro
      - ./zabbix-server/enc:/var/lib/zabbix/enc:ro
      - ./zabbix-server/ssh_keys:/var/lib/zabbix/ssh_keys:ro
      - ./zabbix-server/mibs:/var/lib/zabbix/mibs:ro
    environment:
      - MYSQL_ROOT_USER=root
      - MYSQL_ROOT_PASSWORD=zabbix
      - DB_SERVER_HOST=zabbix-db
      - ZBX_STARTPINGERS=1

      - ZBX_NODEADDRESS=zabbix-server # 추가 부분
      - ZBX_NODEADDRESSPORT=10051 # 추가 부분
    depends_on:
      - zabbix-db
    stop_grace_period: 30s
    sysctls:
      - net.ipv4.ip_local_port_range=1024 65000
      - net.ipv4.conf.all.accept_redirects=0
      - net.ipv4.conf.all.secure_redirects=0
      - net.ipv4.conf.all.send_redirects=0



  # Zabbix web UI
  zabbix-web:
    container_name: zabbix-web
    image: zabbix/zabbix-web-nginx-mysql:latest
    restart: always
    ports:
      - 8080:8080
    volumes:
      - /etc/localtime:/etc/localtime:ro
      - ./zabbix-web/nginx:/etc/ssl/nginx:ro
      - ./zabbix-web/modules/:/usr/share/zabbix/modules/:ro
    environment:
      - MYSQL_USER=zabbix
      - MYSQL_PASSWORD=zabbix
      - DB_SERVER_HOST=zabbix-db
      - ZBX_SERVER_HOST=zabbix-server
      - ZBX_SERVER_NAME=Zabbix Docker
      - PHP_TZ=Asia/Seoul
    depends_on:
      - zabbix-db
      - zabbix-server
    stop_grace_period: 10s