docker-compose部署zabbix-server

docker-compose部署zabbix-server

环境 docker 28 阿里源 阿里加速

下载相关zabbix镜像

docker pull mysql:8.0
docker pull zabbix/zabbix-java-gateway:alpine-6.2-latest
docker pull zabbix/zabbix-server-mysql:6.2-alpine-latest
docker pull zabbix/zabbix-web-nginx-mysql:alpine-6.2-latest

编写 docker compose 文件

vim docker-compose.yml

version: '3'
services:
# 启动数据库 MySQL
  mysql-server:
    image: mysql:8.0
    container_name: mysql-server
    environment:
      MYSQL_DATABASE: "zabbix"
      MYSQL_USER: "zabbix"
      MYSQL_PASSWORD: "zabbix_pwd"
      MYSQL_ROOT_PASSWORD: "Kc@123456"
      MYSQL_CHARACTER_SET_SERVER: "utf8"
      MYSQL_COLLATION_SERVER: "utf8_bin"
      MYSQL_DEFAULT_AUTHENTICATION_PLUGIN: "mysql_native_password"
    volumes:
      - /data/zabbix/mysql_data:/var/lib/mysql
      - /data/zabbix/mysql_logs:/var/log/mysql
      - /data/zabbix/mysql_conf:/etc/mysql
    restart: unless-stopped
    healthcheck:
      test: ["CMD", "mysqladmin", "ping", "-h", "localhost", "-u", "root", "--password=Kc@123456"]
      timeout: 10s
      retries: 5
      start_period: 30s

# 启动zabbix java 监控,用于主动模式下JMX的监控
  zabbix-java-gateway:
    image: zabbix/zabbix-java-gateway:alpine-6.2-latest
    container_name: zabbix-java-gateway
    restart: unless-stopped
    
# 启动zabbix主服务 并配置连接mysql
  zabbix-server-connect-mysql:
    image: zabbix/zabbix-server-mysql:alpine-6.2-latest
    container_name: zabbix-server-connect-mysql
    environment:
      DB_SERVER_HOST: "mysql-server"
      MYSQL_DATABASE: "zabbix"
      MYSQL_USER: "zabbix"
      MYSQL_PASSWORD: "zabbix_pwd"
      MYSQL_ROOT_PASSWORD: "Kc@123456"
      ZBX_JAVAGATEWAY: "zabbix-java-gateway" 
    volumes:
      - /data/zabbix/zabbix_server:/etc/zabbix
    depends_on:
      - mysql-server
      - zabbix-java-gateway
    restart: unless-stopped
    ports:
      - "10051:10051"
    
# 启动zabbix web 服务 nginx
  zabbix-web-nginx-mysql:
    image: zabbix/zabbix-web-nginx-mysql:alpine-6.2-latest
    container_name: zabbix-web-nginx-mysql
    environment:
      PHP_TZ: "Asia/Shanghai"
      ZBX_SERVER_HOST: "zabbix-server-connect-mysql"
      DB_SERVER_HOST: "mysql-server"
      MYSQL_DATABASE: "zabbix"
      MYSQL_USER: "zabbix"
      MYSQL_PASSWORD: "zabbix_pwd"
      MYSQL_ROOT_PASSWORD: "Kc@123456"
    depends_on:
      - mysql-server
      - zabbix-server-connect-mysql
    ports:
      - "8080:8080"
    restart: unless-stopped

启动 docker-compose.yml

docker-compose -f docker-compose.yml up -d

访问web

 http://<宿主机IP>:8080  用户名:Admin 密码:zabbix

posted on 2025-08-28 10:32  luokeli  阅读(8)  评论(0)    收藏  举报

导航