Docker Compose部署zabbix-server
- 单文件管理所有服务
- 依赖关系清晰
- 一键启停/重建
- 版本控制友好
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70
| https://github.com/zabbix/zabbix-docker
mkdir zabbix-docker-compose cd zabbix-docker-compose/ git clone https://github.com/zabbix/zabbix-docker.git cd zabbix-docker/ ls | grep compose compose.yaml compose_additional_components.yaml compose_databases.yaml compose_zabbix_components.yaml docker-compose_v3_alpine_mysql_latest.yaml docker-compose_v3_alpine_mysql_local.yaml docker-compose_v3_alpine_pgsql_latest.yaml docker-compose_v3_alpine_pgsql_local.yaml docker-compose_v3_centos_mysql_latest.yaml docker-compose_v3_centos_mysql_local.yaml docker-compose_v3_centos_pgsql_latest.yaml docker-compose_v3_centos_pgsql_local.yaml docker-compose_v3_ol_mysql_latest.yaml docker-compose_v3_ol_mysql_local.yaml docker-compose_v3_ol_pgsql_latest.yaml docker-compose_v3_ol_pgsql_local.yaml docker-compose_v3_ubuntu_mysql_latest.yaml docker-compose_v3_ubuntu_mysql_local.yaml docker-compose_v3_ubuntu_pgsql_latest.yaml docker-compose_v3_ubuntu_pgsql_local.yaml
zabbix-docker/ ├── env_vars/ │ ├── .ZBX_DB_HOST │ ├── .ZBX_DB_NAME │ ├── .ZBX_DB_USER │ ├── .ZBX_DB_PASSWORD_FILE │ └── ... ├── compose.yaml ├── compose_databases.yaml ├── compose_zabbix_components.yaml └── .env
cp docker-compose_v3_alpine_mysql_latest.yaml docker-compose.yaml
cat docker-compose.yaml services: server-db-init: extends: file: compose_zabbix_components.yaml service: server-mysql-db-init image: "${ZABBIX_SERVER_MYSQL_IMAGE}:${ZABBIX_ALPINE_IMAGE_TAG}${ZABBIX_IMAGE_TAG_POSTFIX}" volumes: - /etc/timezone:/etc/timezone:ro depends_on: mysql-server: condition: service_started labels: com.zabbix.os: "${ALPINE_OS_TAG}"
docker-compose up -f docker-compose.yaml -d
docker inspect zabbix-docker-zabbix-server-1 能看到 zabbix-docker_backend 172.16.239.3 zabbix-docker_database 172.20.0.3 zabbix-docker_frontend 172.16.238.3 zabbix-docker_tools_frontend 172.16.240.2
|


部署zabbix-agent
为了方便,直接用容器了,实际上无论是容器还是包管理器安装的agent,都只要填对zabbix-server的地址就ok
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| docker run -itd --name zabbix-agent \ --network zabbix-docker_backend \ -p 10050:10050 \ -e ZBX_HOSTNAME="Zabbix server" \ -e ZBX_SERVER_HOST="172.16.239.3" \ -e ZBX_SERVER_PORT="10051" \ zabbix/zabbix-agent
docker run -itd --name zabbix-agent \ -p 10050:10050 \ -e ZBX_HOSTNAME="Zabbix server" \ -e ZBX_SERVER_HOST="192.168.10.100" \ -e ZBX_SERVER_PORT="10051" \ zabbix/zabbix-agent
|
如果无法直接连接上,就需要手动将zabbix-server的agent地址从127.0.0.1改为当前agent容器的ip地址,我这里是172.16.239.4
