From 3fe36dad2f4ca4a4b9c8ca96b657f3ac1caebd4a Mon Sep 17 00:00:00 2001 From: okxlin Date: Wed, 12 Jul 2023 04:35:53 +0800 Subject: [PATCH] =?UTF-8?q?feat:=E6=B7=BB=E5=8A=A0zabbix-server=E5=88=B0?= =?UTF-8?q?=E6=B5=8B=E8=AF=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/zabbix-server/6.4.4/.env.sample | 8 +++ apps/zabbix-server/6.4.4/data.yml | 66 +++++++++++++++++++ apps/zabbix-server/6.4.4/docker-compose.yml | 53 +++++++++++++++ apps/zabbix-server/README.md | 32 +++++++++ apps/zabbix-server/data.yml.bak | 20 ++++++ apps/zabbix-server/latest/.env.sample | 8 +++ apps/zabbix-server/latest/data.yml | 66 +++++++++++++++++++ apps/zabbix-server/latest/docker-compose.yml | 53 +++++++++++++++ apps/zabbix-server/logo.png | Bin 0 -> 5442 bytes 9 files changed, 306 insertions(+) create mode 100644 apps/zabbix-server/6.4.4/.env.sample create mode 100644 apps/zabbix-server/6.4.4/data.yml create mode 100644 apps/zabbix-server/6.4.4/docker-compose.yml create mode 100644 apps/zabbix-server/README.md create mode 100644 apps/zabbix-server/data.yml.bak create mode 100644 apps/zabbix-server/latest/.env.sample create mode 100644 apps/zabbix-server/latest/data.yml create mode 100644 apps/zabbix-server/latest/docker-compose.yml create mode 100644 apps/zabbix-server/logo.png diff --git a/apps/zabbix-server/6.4.4/.env.sample b/apps/zabbix-server/6.4.4/.env.sample new file mode 100644 index 00000000..0e81adb6 --- /dev/null +++ b/apps/zabbix-server/6.4.4/.env.sample @@ -0,0 +1,8 @@ +CONTAINER_NAME="zabbix-server" +PANEL_APP_PORT_HTTP="40047" +PANEL_APP_PORT_HTTP2="40048" +PANEL_DB_HOST="127.0.0.1" +FLARUM_DB_PORT="3306" +PANEL_DB_NAME="zabbix" +PANEL_DB_USER="zabbix" +PANEL_DB_USER_PASSWORD="MyDBPWD_brls9UwcRasl" \ No newline at end of file diff --git a/apps/zabbix-server/6.4.4/data.yml b/apps/zabbix-server/6.4.4/data.yml new file mode 100644 index 00000000..4b945f60 --- /dev/null +++ b/apps/zabbix-server/6.4.4/data.yml @@ -0,0 +1,66 @@ +additionalProperties: + formFields: + - child: + default: "" + envKey: PANEL_DB_HOST + labelEn: Database Service + labelZh: 数据库服务 + required: true + type: service + default: mysql + labelEn: Database Service + labelZh: 数据库服务 + params: + - envKey: ZABBIX_DB_PORT + key: mysql + type: param + value: "3306" + #- envKey: ZABBIX_DB_PORT + # key: postgresql + # type: param + # value: "5432" + required: true + type: apps + values: + - label: MySQL + value: mysql + - default: zabbix + envKey: PANEL_DB_NAME + labelEn: Database + labelZh: 数据库名 + random: true + required: true + rule: paramCommon + type: text + - default: zabbix + envKey: PANEL_DB_USER + labelEn: User + labelZh: 数据库用户 + random: true + required: true + rule: paramCommon + type: text + - default: zabbix + envKey: PANEL_DB_USER_PASSWORD + labelEn: Password + labelZh: 数据库用户密码 + random: true + required: true + rule: paramComplexity + type: password + - default: 40047 + edit: true + envKey: PANEL_APP_PORT_HTTP + labelEn: Gateway port + labelZh: 网关端口 + required: true + rule: paramPort + type: number + - default: 40048 + edit: true + envKey: PANEL_APP_PORT_HTTP2 + labelEn: Port + labelZh: 端口 + required: true + rule: paramPort + type: number diff --git a/apps/zabbix-server/6.4.4/docker-compose.yml b/apps/zabbix-server/6.4.4/docker-compose.yml new file mode 100644 index 00000000..c157cba6 --- /dev/null +++ b/apps/zabbix-server/6.4.4/docker-compose.yml @@ -0,0 +1,53 @@ +version: "3" +services: + zabbix-server-mysql: + container_name: ${CONTAINER_NAME} + restart: always + networks: + - 1panel-network + ports: + - "${PANEL_APP_PORT_HTTP}:10051" + environment: + - DB_SERVER_HOST=${PANEL_DB_HOST} + - MYSQL_DATABASE=${PANEL_DB_NAME} + - MYSQL_USER=${PANEL_DB_USER} + - MYSQL_PASSWORD=${PANEL_DB_USER_PASSWORD} + #- MYSQL_ROOT_PASSWORD=root_pwd + - ZBX_JAVAGATEWAY=zabbix-java-gateway + image: zabbix/zabbix-server-mysql:alpine-6.4.4 + depends_on: + - zabbix-java-gateway + labels: + createdBy: Apps + + zabbix-java-gateway: + container_name: ${CONTAINER_NAME}-gateway + restart: always + networks: + - 1panel-network + image: zabbix/zabbix-java-gateway:alpine-6.4.4 + labels: + createdBy: Apps + + zabbix-web-nginx-mysql: + container_name: ${CONTAINER_NAME}-nginx + restart: always + networks: + - 1panel-network + environment: + - ZBX_SERVER_HOST=zabbix-server-mysql + - DB_SERVER_HOST=${PANEL_DB_HOST} + - MYSQL_DATABASE=${PANEL_DB_NAME} + - MYSQL_USER=${PANEL_DB_USER} + - MYSQL_PASSWORD=${PANEL_DB_USER_PASSWORD} + #- MYSQL_ROOT_PASSWORD=root_pwd + ports: + - ${PANEL_APP_PORT_HTTP2}:8080 + image: zabbix/zabbix-web-nginx-mysql:alpine-6.4.4 + depends_on: + - zabbix-server-mysql + labels: + createdBy: Apps +networks: + 1panel-network: + external: true diff --git a/apps/zabbix-server/README.md b/apps/zabbix-server/README.md new file mode 100644 index 00000000..2035c7bd --- /dev/null +++ b/apps/zabbix-server/README.md @@ -0,0 +1,32 @@ +Zabbix is free software, released under the GNU General Public License +(GPL) version 2. + +You can redistribute it and/or modify it under the terms of the GNU GPL +as published by the Free Software Foundation; either version 2 of the +License, or (at your option) any later version. + +The formal terms of the GPL can be found at +http://www.fsf.org/licenses/ . + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +General Public License for more details. + +Exception for linking with OpenSSL + +In addition, as a special exception, we give permission to link the code +of Zabbix with the OpenSSL project OpenSSL library (or with modified +versions of it that use the same license as the OpenSSL library), and +distribute the linked executables. + +Please see https://www.zabbix.com/ for detailed information about Zabbix. + +On-line Zabbix documentation is available at +https://www.zabbix.com/documentation/6.2/manual/ . + +Zabbix installation instructions can be found at +https://www.zabbix.com/documentation/6.2/manual/installation/ . + +If you are installing Zabbix from packages the instructions can be found at +https://www.zabbix.com/documentation/6.2/manual/installation/install_from_packages/ . \ No newline at end of file diff --git a/apps/zabbix-server/data.yml.bak b/apps/zabbix-server/data.yml.bak new file mode 100644 index 00000000..d73ca98f --- /dev/null +++ b/apps/zabbix-server/data.yml.bak @@ -0,0 +1,20 @@ +name: Zabbix-Server +tags: + - 工具 +title: 实时监控 IT 组件和服务 +type: 工具 +description: 实时监控 IT 组件和服务 +additionalProperties: + key: zabbix-server + name: Zabbix-Server + tags: + - Tool + shortDescZh: 实时监控 IT 组件和服务(服务端) + shortDescEn: Real-time monitoring of IT components and services (Server) + type: tool + crossVersionUpdate: true + limit: 0 + recommend: 0 + website: https://www.zabbix.com/ + github: https://github.com/zabbix/zabbix + document: https://www.zabbix.com/manuals diff --git a/apps/zabbix-server/latest/.env.sample b/apps/zabbix-server/latest/.env.sample new file mode 100644 index 00000000..0e81adb6 --- /dev/null +++ b/apps/zabbix-server/latest/.env.sample @@ -0,0 +1,8 @@ +CONTAINER_NAME="zabbix-server" +PANEL_APP_PORT_HTTP="40047" +PANEL_APP_PORT_HTTP2="40048" +PANEL_DB_HOST="127.0.0.1" +FLARUM_DB_PORT="3306" +PANEL_DB_NAME="zabbix" +PANEL_DB_USER="zabbix" +PANEL_DB_USER_PASSWORD="MyDBPWD_brls9UwcRasl" \ No newline at end of file diff --git a/apps/zabbix-server/latest/data.yml b/apps/zabbix-server/latest/data.yml new file mode 100644 index 00000000..4b945f60 --- /dev/null +++ b/apps/zabbix-server/latest/data.yml @@ -0,0 +1,66 @@ +additionalProperties: + formFields: + - child: + default: "" + envKey: PANEL_DB_HOST + labelEn: Database Service + labelZh: 数据库服务 + required: true + type: service + default: mysql + labelEn: Database Service + labelZh: 数据库服务 + params: + - envKey: ZABBIX_DB_PORT + key: mysql + type: param + value: "3306" + #- envKey: ZABBIX_DB_PORT + # key: postgresql + # type: param + # value: "5432" + required: true + type: apps + values: + - label: MySQL + value: mysql + - default: zabbix + envKey: PANEL_DB_NAME + labelEn: Database + labelZh: 数据库名 + random: true + required: true + rule: paramCommon + type: text + - default: zabbix + envKey: PANEL_DB_USER + labelEn: User + labelZh: 数据库用户 + random: true + required: true + rule: paramCommon + type: text + - default: zabbix + envKey: PANEL_DB_USER_PASSWORD + labelEn: Password + labelZh: 数据库用户密码 + random: true + required: true + rule: paramComplexity + type: password + - default: 40047 + edit: true + envKey: PANEL_APP_PORT_HTTP + labelEn: Gateway port + labelZh: 网关端口 + required: true + rule: paramPort + type: number + - default: 40048 + edit: true + envKey: PANEL_APP_PORT_HTTP2 + labelEn: Port + labelZh: 端口 + required: true + rule: paramPort + type: number diff --git a/apps/zabbix-server/latest/docker-compose.yml b/apps/zabbix-server/latest/docker-compose.yml new file mode 100644 index 00000000..321313a4 --- /dev/null +++ b/apps/zabbix-server/latest/docker-compose.yml @@ -0,0 +1,53 @@ +version: "3" +services: + zabbix-server-mysql: + container_name: ${CONTAINER_NAME} + restart: always + networks: + - 1panel-network + ports: + - "${PANEL_APP_PORT_HTTP}:10051" + environment: + - DB_SERVER_HOST=${PANEL_DB_HOST} + - MYSQL_DATABASE=${PANEL_DB_NAME} + - MYSQL_USER=${PANEL_DB_USER} + - MYSQL_PASSWORD=${PANEL_DB_USER_PASSWORD} + #- MYSQL_ROOT_PASSWORD=root_pwd + - ZBX_JAVAGATEWAY=zabbix-java-gateway + image: zabbix/zabbix-server-mysql:alpine-latest + depends_on: + - zabbix-java-gateway + labels: + createdBy: Apps + + zabbix-java-gateway: + container_name: ${CONTAINER_NAME}-gateway + restart: always + networks: + - 1panel-network + image: zabbix/zabbix-java-gateway:alpine-latest + labels: + createdBy: Apps + + zabbix-web-nginx-mysql: + container_name: ${CONTAINER_NAME}-nginx + restart: always + networks: + - 1panel-network + environment: + - ZBX_SERVER_HOST=zabbix-server-mysql + - DB_SERVER_HOST=${PANEL_DB_HOST} + - MYSQL_DATABASE=${PANEL_DB_NAME} + - MYSQL_USER=${PANEL_DB_USER} + - MYSQL_PASSWORD=${PANEL_DB_USER_PASSWORD} + #- MYSQL_ROOT_PASSWORD=root_pwd + ports: + - ${PANEL_APP_PORT_HTTP2}:8080 + image: zabbix/zabbix-web-nginx-mysql:alpine-latest + depends_on: + - zabbix-server-mysql + labels: + createdBy: Apps +networks: + 1panel-network: + external: true diff --git a/apps/zabbix-server/logo.png b/apps/zabbix-server/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..8cabcacd99d0b44bec7adecef6f438552f7fd42c GIT binary patch literal 5442 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 A5dZ)H literal 0 HcmV?d00001