change: added docker compose file to deploy the test server with the proxies
This commit is contained in:
		
							
								
								
									
										28
									
								
								zabbix-tests/server-docker/.env
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										28
									
								
								zabbix-tests/server-docker/.env
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,28 @@ | ||||
| # Database Configuration | ||||
| MYSQL_DATABASE=zabbix | ||||
| MYSQL_USER=zabbix | ||||
| MYSQL_PASSWORD=strong-password | ||||
| MYSQL_ROOT_PASSWORD=very-strong-password | ||||
|  | ||||
| # Image Versions (uncomment to override defaults) | ||||
| ZABBIX_VERSION=latest   | ||||
| # MYSQL_VERSION=8.4.0-oraclelinux8  # Keep oraclelinux variant for architecture compatibility | ||||
|  | ||||
| # Port Configuration | ||||
| ZABBIX_SERVER_PORT=10051 | ||||
| ZABBIX_WEB_PORT=8887 | ||||
|  | ||||
| # Server Settings | ||||
| PHP_TIMEZONE=Europe/Warsaw | ||||
| ZBX_STARTSNMPTRAPPER=1 | ||||
| ZBX_SNMPTRAPPERFILE=/tmp/traps.log | ||||
| ZBX_CACHESIZE=128M | ||||
| ZBX_VALUECACHESIZE=64M | ||||
| ZBX_TRENDCACHESIZE=32M | ||||
|  | ||||
| # Common Proxy Settings (applied to all proxies) | ||||
| PROXY_CACHE_SIZE=128M | ||||
| PROXY_HISTORY_CACHE_SIZE=32M | ||||
| PROXY_HISTORY_INDEX_CACHE_SIZE=16M | ||||
| PROXY_BUFFER_MODE=hybrid | ||||
| PROXY_MEMORY_BUFFER_SIZE=64M | ||||
							
								
								
									
										224
									
								
								zabbix-tests/server-docker/docker-compose.yaml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										224
									
								
								zabbix-tests/server-docker/docker-compose.yaml
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,224 @@ | ||||
| ### This will create a Zabbix server with six active proxies and a MySQL database. | ||||
| ### You need to configure proxies in Zabbix frontend after deployment. | ||||
| ### Adjust .env file for customization. | ||||
|  | ||||
| services: | ||||
|   mysql-server: | ||||
|     image: mysql:${MYSQL_VERSION:-8.4.0-oraclelinux8} | ||||
|     container_name: zabbix-mysql-server | ||||
|     command: | ||||
|       - 'mysqld' | ||||
|       - '--character-set-server=utf8mb4' | ||||
|       - '--collation-server=utf8mb4_bin' | ||||
|       - '--log-bin-trust-function-creators=1' | ||||
|     environment: | ||||
|       - MYSQL_DATABASE=${MYSQL_DATABASE} | ||||
|       - MYSQL_USER=${MYSQL_USER} | ||||
|       - MYSQL_PASSWORD=${MYSQL_PASSWORD} | ||||
|       - MYSQL_ROOT_PASSWORD=${MYSQL_ROOT_PASSWORD} | ||||
|     volumes: | ||||
|       - ./zabbix/mysql:/var/lib/mysql | ||||
|     restart: unless-stopped | ||||
|     networks: | ||||
|       - zabbix-net | ||||
|  | ||||
|   zabbix-server: | ||||
|     image: zabbix/zabbix-server-mysql:${ZABBIX_VERSION:-latest} | ||||
|     container_name: zabbix-server | ||||
|     depends_on: | ||||
|       - mysql-server | ||||
|     ports: | ||||
|       - "${ZABBIX_SERVER_PORT}:10051" | ||||
|     environment: | ||||
|       - DB_SERVER_HOST=mysql-server | ||||
|       - MYSQL_DATABASE=${MYSQL_DATABASE} | ||||
|       - MYSQL_USER=${MYSQL_USER} | ||||
|       - MYSQL_PASSWORD=${MYSQL_PASSWORD} | ||||
|       - ZBX_STARTSNMPTRAPPER=${ZBX_STARTSNMPTRAPPER} | ||||
|       - ZBX_SNMPTRAPPERFILE=${ZBX_SNMPTRAPPERFILE} | ||||
|       - ZBX_CACHESIZE=${ZBX_CACHESIZE} | ||||
|       - ZBX_VALUECACHESIZE=${ZBX_VALUECACHESIZE} | ||||
|       - ZBX_TRENDCACHESIZE=${ZBX_TRENDCACHESIZE} | ||||
|     volumes: | ||||
|       - ./zabbix/alertscripts:/usr/lib/zabbix/alertscripts | ||||
|       - ./zabbix/externalscripts:/usr/lib/zabbix/externalscripts | ||||
|     restart: unless-stopped | ||||
|     networks: | ||||
|       - zabbix-net | ||||
|  | ||||
|   zabbix-web: | ||||
|     image: zabbix/zabbix-web-nginx-mysql:${ZABBIX_VERSION:-latest} | ||||
|     container_name: zabbix-web | ||||
|     depends_on: | ||||
|       - mysql-server | ||||
|       - zabbix-server | ||||
|     ports: | ||||
|       - "${ZABBIX_WEB_PORT}:8080" | ||||
|     environment: | ||||
|       - DB_SERVER_HOST=mysql-server | ||||
|       - MYSQL_DATABASE=${MYSQL_DATABASE} | ||||
|       - MYSQL_USER=${MYSQL_USER} | ||||
|       - MYSQL_PASSWORD=${MYSQL_PASSWORD} | ||||
|       - ZBX_SERVER_HOST=zabbix-server | ||||
|       - PHP_TZ=${PHP_TIMEZONE} | ||||
|     restart: unless-stopped | ||||
|     networks: | ||||
|       - zabbix-net | ||||
|  | ||||
|   zabbix-proxy-active-01: | ||||
|     image: zabbix/zabbix-proxy-sqlite3:${ZABBIX_VERSION:-latest} | ||||
|     container_name: zabbix-proxy-active-01 | ||||
|     depends_on: | ||||
|       - zabbix-server | ||||
|     ports: | ||||
|       - "10101:10051" | ||||
|     environment: | ||||
|       - ZBX_HOSTNAME=zabbix-proxy-active-01 | ||||
|       - ZBX_SERVER_HOST=zabbix-server | ||||
|       - ZBX_PROXYMODE=0 | ||||
|       - ZBX_CACHESIZE=${PROXY_CACHE_SIZE} | ||||
|       - ZBX_HISTORYCACHESIZE=${PROXY_HISTORY_CACHE_SIZE} | ||||
|       - ZBX_HISTORYINDEXCACHESIZE=${PROXY_HISTORY_INDEX_CACHE_SIZE} | ||||
|       - ZBX_PROXYBUFFERMODE=${PROXY_BUFFER_MODE} | ||||
|       - ZBX_PROXYMEMORYBUFFERSIZE=${PROXY_MEMORY_BUFFER_SIZE} | ||||
|     volumes: | ||||
|       - ./zabbix/proxy-01:/var/lib/zabbix/db_data:rw | ||||
|     restart: unless-stopped | ||||
|     networks: | ||||
|       - zabbix-net | ||||
|  | ||||
|   zabbix-proxy-active-02: | ||||
|     image: zabbix/zabbix-proxy-sqlite3:${ZABBIX_VERSION:-latest} | ||||
|     container_name: zabbix-proxy-active-02 | ||||
|     depends_on: | ||||
|       - zabbix-server | ||||
|     ports: | ||||
|       - "10102:10051" | ||||
|     environment: | ||||
|       - ZBX_HOSTNAME=zabbix-proxy-active-02 | ||||
|       - ZBX_SERVER_HOST=zabbix-server | ||||
|       - ZBX_PROXYMODE=0 | ||||
|       - ZBX_CACHESIZE=${PROXY_CACHE_SIZE} | ||||
|       - ZBX_HISTORYCACHESIZE=${PROXY_HISTORY_CACHE_SIZE} | ||||
|       - ZBX_HISTORYINDEXCACHESIZE=${PROXY_HISTORY_INDEX_CACHE_SIZE} | ||||
|       - ZBX_PROXYBUFFERMODE=${PROXY_BUFFER_MODE} | ||||
|       - ZBX_PROXYMEMORYBUFFERSIZE=${PROXY_MEMORY_BUFFER_SIZE} | ||||
|     volumes: | ||||
|       - ./zabbix/proxy-02:/var/lib/zabbix/db_data:rw | ||||
|     restart: unless-stopped | ||||
|     networks: | ||||
|       - zabbix-net | ||||
|  | ||||
|   zabbix-proxy-active-03: | ||||
|     image: zabbix/zabbix-proxy-sqlite3:${ZABBIX_VERSION:-latest} | ||||
|     container_name: zabbix-proxy-active-03 | ||||
|     depends_on: | ||||
|       - zabbix-server | ||||
|     ports: | ||||
|       - "10103:10051" | ||||
|     environment: | ||||
|       - ZBX_HOSTNAME=zabbix-proxy-active-03 | ||||
|       - ZBX_SERVER_HOST=zabbix-server | ||||
|       - ZBX_PROXYMODE=0 | ||||
|       - ZBX_CACHESIZE=${PROXY_CACHE_SIZE} | ||||
|       - ZBX_HISTORYCACHESIZE=${PROXY_HISTORY_CACHE_SIZE} | ||||
|       - ZBX_HISTORYINDEXCACHESIZE=${PROXY_HISTORY_INDEX_CACHE_SIZE} | ||||
|       - ZBX_PROXYBUFFERMODE=${PROXY_BUFFER_MODE} | ||||
|       - ZBX_PROXYMEMORYBUFFERSIZE=${PROXY_MEMORY_BUFFER_SIZE} | ||||
|     volumes: | ||||
|       - ./zabbix/proxy-03:/var/lib/zabbix/db_data:rw | ||||
|     restart: unless-stopped | ||||
|     networks: | ||||
|       - zabbix-net | ||||
|  | ||||
|   zabbix-proxy-active-04: | ||||
|     image: zabbix/zabbix-proxy-sqlite3:${ZABBIX_VERSION:-latest} | ||||
|     container_name: zabbix-proxy-active-04 | ||||
|     depends_on: | ||||
|       - zabbix-server | ||||
|     ports: | ||||
|       - "10104:10051" | ||||
|     environment: | ||||
|       - ZBX_HOSTNAME=zabbix-proxy-active-04 | ||||
|       - ZBX_SERVER_HOST=zabbix-server | ||||
|       - ZBX_PROXYMODE=0 | ||||
|       - ZBX_CACHESIZE=${PROXY_CACHE_SIZE} | ||||
|       - ZBX_HISTORYCACHESIZE=${PROXY_HISTORY_CACHE_SIZE} | ||||
|       - ZBX_HISTORYINDEXCACHESIZE=${PROXY_HISTORY_INDEX_CACHE_SIZE} | ||||
|       - ZBX_PROXYBUFFERMODE=${PROXY_BUFFER_MODE} | ||||
|       - ZBX_PROXYMEMORYBUFFERSIZE=${PROXY_MEMORY_BUFFER_SIZE} | ||||
|     volumes: | ||||
|       - ./zabbix/proxy-04:/var/lib/zabbix/db_data:rw | ||||
|     restart: unless-stopped | ||||
|     networks: | ||||
|       - zabbix-net | ||||
|  | ||||
|   zabbix-proxy-active-05: | ||||
|     image: zabbix/zabbix-proxy-sqlite3:${ZABBIX_VERSION:-latest} | ||||
|     container_name: zabbix-proxy-active-05 | ||||
|     depends_on: | ||||
|       - zabbix-server | ||||
|     ports: | ||||
|       - "10105:10051" | ||||
|     environment: | ||||
|       - ZBX_HOSTNAME=zabbix-proxy-active-05 | ||||
|       - ZBX_SERVER_HOST=zabbix-server | ||||
|       - ZBX_PROXYMODE=0 | ||||
|       - ZBX_CACHESIZE=${PROXY_CACHE_SIZE} | ||||
|       - ZBX_HISTORYCACHESIZE=${PROXY_HISTORY_CACHE_SIZE} | ||||
|       - ZBX_HISTORYINDEXCACHESIZE=${PROXY_HISTORY_INDEX_CACHE_SIZE} | ||||
|       - ZBX_PROXYBUFFERMODE=${PROXY_BUFFER_MODE} | ||||
|       - ZBX_PROXYMEMORYBUFFERSIZE=${PROXY_MEMORY_BUFFER_SIZE} | ||||
|     volumes: | ||||
|       - ./zabbix/proxy-05:/var/lib/zabbix/db_data:rw | ||||
|     restart: unless-stopped | ||||
|     networks: | ||||
|       - zabbix-net | ||||
|  | ||||
|   zabbix-proxy-active-06: | ||||
|     image: zabbix/zabbix-proxy-sqlite3:${ZABBIX_VERSION:-latest} | ||||
|     container_name: zabbix-proxy-active-06 | ||||
|     depends_on: | ||||
|       - zabbix-server | ||||
|     ports: | ||||
|       - "10106:10051" | ||||
|     environment: | ||||
|       - ZBX_HOSTNAME=zabbix-proxy-active-06 | ||||
|       - ZBX_SERVER_HOST=zabbix-server | ||||
|       - ZBX_PROXYMODE=0 | ||||
|       - ZBX_CACHESIZE=${PROXY_CACHE_SIZE} | ||||
|       - ZBX_HISTORYCACHESIZE=${PROXY_HISTORY_CACHE_SIZE} | ||||
|       - ZBX_HISTORYINDEXCACHESIZE=${PROXY_HISTORY_INDEX_CACHE_SIZE} | ||||
|       - ZBX_PROXYBUFFERMODE=${PROXY_BUFFER_MODE} | ||||
|       - ZBX_PROXYMEMORYBUFFERSIZE=${PROXY_MEMORY_BUFFER_SIZE} | ||||
|     volumes: | ||||
|       - ./zabbix/proxy-06:/var/lib/zabbix/db_data:rw | ||||
|     restart: unless-stopped | ||||
|     networks: | ||||
|       - zabbix-net | ||||
|  | ||||
|   # zabbix-proxy-passive-03: | ||||
|   #   image: zabbix/zabbix-proxy-sqlite3:${ZABBIX_VERSION:-latest} | ||||
|   #   container_name: zabbix-proxy-passive-03 | ||||
|   #   depends_on: | ||||
|   #     - zabbix-server | ||||
|   #   ports: | ||||
|   #     - "10103:10051" | ||||
|   #   environment: | ||||
|   #     - ZBX_HOSTNAME=zabbix-proxy-passive-03 | ||||
|   #     - ZBX_SERVER_HOST=zabbix-server | ||||
|   #     - ZBX_PROXYMODE=1 | ||||
|   #     - ZBX_CACHESIZE=${PROXY_CACHE_SIZE} | ||||
|   #     - ZBX_HISTORYCACHESIZE=${PROXY_HISTORY_CACHE_SIZE} | ||||
|   #     - ZBX_HISTORYINDEXCACHESIZE=${PROXY_HISTORY_INDEX_CACHE_SIZE} | ||||
|   #     - ZBX_PROXYBUFFERMODE=${PROXY_BUFFER_MODE} | ||||
|   #     - ZBX_PROXYMEMORYBUFFERSIZE=${PROXY_MEMORY_BUFFER_SIZE} | ||||
|   #   volumes: | ||||
|   #     - ./zabbix/proxy-03:/var/lib/zabbix/db_data:rw | ||||
|   #   restart: unless-stopped | ||||
|   #   networks: | ||||
|   #     - zabbix-net | ||||
|  | ||||
| networks: | ||||
|   zabbix-net: | ||||
|     driver: bridge | ||||
		Reference in New Issue
	
	Block a user