一、服务器安装


mkdir /data/zabbix -p
mkdir /data/mysql -p
echo "version: '3.8'
services:
  mysql:
    container_name: mysql
    image: mysql:8.0
    restart: unless-stopped
    environment:
      TZ: Asia/Shanghai
      MYSQL_DATABASE: zabbix
      MYSQL_USER: zabbix
      MYSQL_PASSWORD: zabbix_pwd
      MYSQL_ROOT_PASSWORD: 123456
    network_mode: "host"
    volumes:
      - ./data:/var/lib/mysql
      - ./logs:/var/log/mysql
      - ./conf.d:/etc/mysql/conf.d
      - ./my.cnf:/etc/my.cnf
    command: --character-set-server=utf8 --collation-server=utf8_bin --default-authentication-plugin=mysql_native_password">/data/mysql/docker-compose.yml

echo "[mysqld]
#绑定IP
bind-address = 0.0.0.0
# 设置3306端口
port=3306

#修改为北京时间
default-time-zone=+8:00

# 服务端使用的字符集默认为utf8mb4
character-set-server=utf8mb4
init_connect='SET NAMES utf8mb4'

# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB

# 默认使用“mysql_native_password”插件认证
#mysql_native_password
default_authentication_plugin=mysql_native_password

[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8mb4

[client]
# 设置mysql客户端连接服务端时默认使用的端口
port=3306
default-character-set=utf8mb4">/data/mysql/my.cnf

echo "docker-compose down && docker-compose up -d && docker logs -f mysql" >/data/mysql/restart.sh

echo "version: '3.5'
services:
  zabbix-server:
    image: zabbix/zabbix-server-mysql:latest
    container_name: zabbix-server
    environment:
      TZ: Asia/Shanghai
      DB_SERVER_HOST: 192.168.100.1
      MYSQL_USER: root
      MYSQL_PASSWORD: 123456
      MYSQL_DATABASE: zabbix
      StartConnectors: 3
      StartIPMIPollers: 1
      StartJavaPollers: 1
      StartSNMPTrapper: 1
      StartVMwareCollectors: 1
    ports:
      - "10051:10051"
    networks:
      - mynetwork
  zabbix-web:
    image: zabbix/zabbix-web-nginx-mysql:latest
    container_name: zabbix-web
    environment:
      TZ: Asia/Shanghai
      ZBX_SERVER_HOST: zabbix-server
      DB_SERVER_HOST: 192.168.100.1
      MYSQL_USER: root
      MYSQL_PASSWORD: 123456
      MYSQL_DATABASE: zabbix
    ports:
      - "8080:8080"
      - "8443:8443"
    networks:
      - mynetwork
networks:
  mynetwork:
    external: true
">/data/zabbix/docker-compose.yml

二、客户端安装

#centos8
sudo rpm -Uvh  https://repo.zabbix.com/zabbix/7.0/centos/8/x86_64/zabbix-agent-7.0.0-release1.el8.x86_64.rpm

#centos9
sudo rpm -Uvh  https://repo.zabbix.com/zabbix/7.0/centos/9/x86_64/zabbix-agent-7.0.0-release1.el9.x86_64.rpm

sudo systemctl status zabbix-agent
#如果未安装成功
sudo dnf install zabbix-agent

#修改文件
sudo vi /etc/sysctl.conf
fs.inotify.max_queued_events=1048576
fs.inotify.max_user_instances=1048576
fs.inotify.max_user_watches=1048576
sudo sysctl -p

三、配置

vi /etc/zabbix/zabbix_agentd.conf
#或者
vi /etc/zabbix_agentd.conf

Server=192.168.232.170
StartAgents=3
ServerActive=192.168.232.170
Hostname=dev-test

sudo systemctl enable zabbix-agent
sudo systemctl start zabbix-agent && sudo systemctl status zabbix-agent && tail -f /var/log/zabbix/zabbix_agentd.log

#查看运行日志
tail -f /var/log/zabbix/zabbix_agentd.log

不区分大小写索引建立

drop index ems.sys_user_user_name;
create unique index   cclv_player_user_name     on ems.sys_user USING btree (LOWER(user_name));

字段不区分大小写

sudo tee /etc/yum.repos.d/pgdg-redhat-all.repo > /dev/null <<EOF
[pgdg-common]
name=PostgreSQL common RPMs for RHEL / Rocky \$releasever - \$basearch
baseurl=https://download.postgresql.org/pub/repos/yum/common/redhat/rhel-\$releasever-\$basearch
enabled=1
gpgcheck=0

[pgdg14]
name=PostgreSQL 14 for RHEL / Rocky \$releasever - \$basearch
baseurl=https://download.postgresql.org/pub/repos/yum/14/redhat/rhel-\$releasever-\$basearch
enabled=1
gpgcheck=0
EOF




sudo dnf makecache -y

sudo tee /etc/yum.repos.d/pgdg-redhat-all.repo > /dev/null <<EOF
[pgdg-common]
name=PostgreSQL common RPMs for RHEL / Rocky $releasever - $basearch
baseurl=https://download.postgresql.org/pub/repos/yum/common/redhat/rhel-$releasever-$basearch
enabled=1
gpgcheck=1

[pgdg14]
name=PostgreSQL 14 for RHEL / Rocky $releasever - $basearch
baseurl=https://download.postgresql.org/pub/repos/yum/14/redhat/rhel-$releasever-$basearch
enabled=1
gpgcheck=1
EOF

sudo dnf install -y postgresql14-contrib

sudo -u postgres psql -d cclv_data -c "CREATE EXTENSION IF NOT EXISTS citext;"

ALTER TABLE ems.sys_user 
ALTER COLUMN user_name TYPE citext USING user_name::citext;

https://www.bilibili.com/video/BV1ji4y1v7tw/?vd_source=9f0823ff116001b3a2b5ee6adadd2e2f
https://openwrt.org/docs/guide-developer/toolchain/install-buildsystem

https://github.com/jiay-shi/openwrt?tab=readme-ov-file
https://github.com/kiddin9/openwrt-packages
https://dl.openwrt.ai/23.05/packages/arm_cortex-a7/kiddin9/
https://github.com/kenzok8/openwrt-packages
git clone https://github.com/openwrt/openwrt 官方版本
git clone https://github.com/coolsnowwolf/lede lede版本
git clone -b 22.03 --single-branch https://github.com/Lienol/openwrt lienol版本
https://github.com/OldCoding/openwrt_packit_arm/blob/main/immo_diy.sh
https://www.right.com.cn/FORUM/thread-8378388-1-1.html

获取源码

sudo apt update && sudo apt install -y build-essential libncurses5-dev gawk git subversion libssl-dev gettext zlib1g-dev file wget unzip python3
git clone -b ipq60xx-devel_nss https://github.com/JiaY-shi/openwrt.git && cd openwrt

方案一

echo "src-git packages https://git.openwrt.org/feed/packages.git
src-git luci https://git.openwrt.org/project/luci.git
src-git routing https://git.openwrt.org/feed/routing.git
src-git nss_packages https://github.com/JiaY-shi/nss-packages.git;k6.6
src-git passwall https://github.com/xiaorouji/openwrt-passwall.git
src-git passwall_packages https://github.com/xiaorouji/openwrt-passwall-packages.git
" > feeds.conf.default 

拉取包

./scripts/feeds update  -a && ./scripts/feeds install -a
sed -i 's/192.168.1.1/192.168.8.1/g' ./package/base-files/files/bin/config_generate

补丁-1

cd /data/ && git clone https://github.com/OldCoding/openwrt_packit_arm.git
echo 'cp /data/openwrt_packit_arm/patches/* /data/openwrt/feeds/packages/net/shadowsocks-libev/patches' >patch.sh && chmod 777 *.sh
./patch.sh

补丁-2

在 menuconfig 中取消选择 dnsmasq 并选择 dnsmasq-full:
导航到 Base system -> dnsmasq
取消选择 dnsmasq
选择 dnsmasq-full

配置并编译

cd openwrt && rm tmp/ -rf && rm .config
make menuconfig
make V=s -j1

# 多线程编译
make -j$(nproc)

权限问题

user: root

docker-compose.yml

version: "3"
services:
  rocketchat:
    image: registry.rocket.chat/rocketchat/rocket.chat:${RELEASE:-latest}
    container_name: sys_chat
    restart: always
    volumes:
      - ./uploads:/app/uploads
    labels:
      traefik.enable: "true"
      traefik.http.routers.rocketchat.rule: Host(`${DOMAIN:-}`)
      traefik.http.routers.rocketchat.tls: "true"
      traefik.http.routers.rocketchat.entrypoints: https
      traefik.http.routers.rocketchat.tls.certresolver: le
    environment:
      MONGO_URL: "${MONGO_URL:-\
        mongodb://${MONGODB_ADVERTISED_HOSTNAME:-mongodb}:${MONGODB_INITIAL_PRIMARY_PORT_NUMBER:-27017}/\
        ${MONGODB_DATABASE:-rocketchat}?replicaSet=${MONGODB_REPLICA_SET_NAME:-rs0}}"
      MONGO_OPLOG_URL: "${MONGO_OPLOG_URL:\
        -mongodb://${MONGODB_ADVERTISED_HOSTNAME:-mongodb}:${MONGODB_INITIAL_PRIMARY_PORT_NUMBER:-27017}/\
        local?replicaSet=${MONGODB_REPLICA_SET_NAME:-rs0}}"
      ROOT_URL: ${ROOT_URL:-http://localhost:${HOST_PORT:-3000}}
      PORT: ${PORT:-3000}
      DEPLOY_METHOD: docker
      DEPLOY_PLATFORM: ${DEPLOY_PLATFORM:-}
      REG_TOKEN: ${REG_TOKEN:-}
    depends_on:
      - mongodb
    expose:
      - ${PORT:-3000}
    ports:
      - "${BIND_IP:-0.0.0.0}:${HOST_PORT:-3000}:${PORT:-3000}"

  mongodb:
    image: docker.io/bitnami/mongodb:${MONGODB_VERSION:-5.0}
    container_name: sys_mongodb
    restart: always
    user: root
    volumes:
      - ./mongodb:/bitnami/mongodb
    environment:
      MONGODB_REPLICA_SET_MODE: primary
      MONGODB_REPLICA_SET_NAME: ${MONGODB_REPLICA_SET_NAME:-rs0}
      MONGODB_PORT_NUMBER: ${MONGODB_PORT_NUMBER:-27017}
      MONGODB_INITIAL_PRIMARY_HOST: ${MONGODB_INITIAL_PRIMARY_HOST:-mongodb}
      MONGODB_INITIAL_PRIMARY_PORT_NUMBER: ${MONGODB_INITIAL_PRIMARY_PORT_NUMBER:-27017}
      MONGODB_ADVERTISED_HOSTNAME: ${MONGODB_ADVERTISED_HOSTNAME:-mongodb}
      MONGODB_ENABLE_JOURNAL: ${MONGODB_ENABLE_JOURNAL:-true}
      ALLOW_EMPTY_PASSWORD: ${ALLOW_EMPTY_PASSWORD:-yes}

chat.conf

server {
  server_name     chat.wdzs.com;
  include         /common/wdzs.com.inc;
  sendfile        on;
  keepalive_timeout  65;
  client_max_body_size 10m;
#  access_log on;
# access_log  /var/log/nginx/srs.log  main;
  location / {
    root  /;
    proxy_pass  http://192.168.100.1:3000/;
    proxy_http_version 1.1;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection "upgrade";
    proxy_set_header Host $http_host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto https;
    proxy_set_header X-Nginx-Proxy true;
    proxy_redirect off;
  }
}