Docker版Redis一主两从三哨兵 一、整体架构 1.1 环境规划 服务器:3台,Docker环境 192.168.1.19:Redis Master + Sentinel 192.168.1.20:Redis Slave + Sentinel 192.168.1.21:Redis Slave + Sentinel Redis端口:6379 Sentinel端口:26379 Redis密码:Redis@123 1.2 架构说明 Redis:1主2从,主写从读,自动全量数据同步 Sentinel:3节点哨兵集群,负责监控、自动故障转移、选主 持久化:同时开启RDB+AOF,保障数据不丢失 所有Redis数据挂载宿主机,防止容器删除数据丢失 1.3 统一目录规划(三台机器全部执行) # 创建统一目录 mkdir -p /data/redis/data mkdir -p /data/redis/sentinel mkdir -p /data/redis/backup # 创建docker内网(三台全部创建) docker network create redis-net 二、Redis.... 有更新! Docker版Redis部署 server
Xtrabackup 基础备份与恢复 一、前期准备 1.1 环境说明 数据库:MySQL8.0(Docker) 数据目录:/data/mysql/data 工具简介:Percona-XtraBackup8.0,InnoDB专用物理热备;备份无需停机、无需锁表,支持全量/增量备份,用于数据误删、故障回滚 1.2 工具安装(CentOS 阿里云源,解决官网无法下载问题) # 使用阿里云镜像安装,规避官方源访问失败问题 yum install -y https://mirrors.aliyun.com/percona/yum/percona-release-latest.noarch.rpm percona-release enable tools release yum clean all && yum makecache yum install -y percona-xtrabackup-80 # 验证是否安装成功 xtrabackup --version 二、备份机制 2.1 备份类型 全量备份:备份实例所有库表数据,可独立恢复;目录格式:full_年月日,例:ful.... 有更新! Xtrabackup 基础备份与恢复 server
Jenkins安装 基于docker 一、环境准备 docker 环境 【详见 docker 安装文档】 代理环境 【详见 v2raya使用文档】 docker 代理 mkdir -p /etc/systemd/system/docker.service.d vi /etc/systemd/system/docker.service.d/http-proxy.conf [Service] Environment="HTTP_PROXY=http://你的代理IP:端口" Environment="HTTPS_PROXY=http://你的代理IP:端口" Environment="NO_PROXY=localhost,127.0.0.1,192.168.0.0/16" systemctl daemon-reload systemctl restart docker docker info 二、安装命令 mkdir -p /data/jenkins_home chmod 777 /data/jenkins_home docker run -d \ -p 8080:8080 \ -p .... 有更新! Jenkins server
GitLab安装 一、环境说明 CentOS Stream release 9 selinux & firewalld 禁用状态 安装依赖 dnf install -y curl openssh-server openssh-clients postfix cronie policycoreutils perl policycoreutils-python-utils gitlab安装包 gitlab-ce-18.7.0-ce.0.el9.x86_64.rpm 下载地址:https://packages.gitlab.com/gitlab/gitlab-ce 二、安装命令 rpm -ivh gitlab-ce-18.7.0-ce.0.el9.x86_64.rpm 三、修改配置 vi /etc/gitlab/gitlab.rb 修改 external_url 'http://你的IP或域名' 这一行。 修改完成后,执行重新配置命令: gitlab-ctl reconfigure 初始root密码文件 GitLab 安装后会自动生成一个初始的 root 账户密码,存放在 /e.... 有更新! GitLab安装 server
Kubernets 基础 一、 K8S简述 用来调度、管理、扩缩容、自愈、滚动更新一堆容器的自动化容器编排平台。 K8s 逻辑图 ┌─────────────────────────────────────────────────────────────────────┐ │ 【第一步:用户操作】 │ │ $ kubectl apply -f nginx.yaml │ └───────────────────────┬─────────────────────────────────────────────┘ │ ▼ ┌─────────────────────────────────────────────────────────────────────┐ │ 【第二步:请求到 kube-apiserver】 │ │ - 认证、鉴权、校验 YAML │ │ - 生成 Deployment 资源对象 │ │ - 写入 etcd 保存(集群唯一状态源) │ └───────────────────────┬─────────────────────────────────────────.... 有更新! Kubernets 基础 server
Docker 基础 一、 基础生命周期命令 # 查看本地镜像 docker images # 搜索镜像 docker search nginx # 拉取镜像 docker pull nginx docker pull nginx:1.24 # 运行容器(最常用模板) docker run -d \ --name mynginx \ -p 80:80 \ -v /host/path:/container/path \ --restart=always \ nginx # 停止/启动/重启容器 docker stop 容器名/ID docker start 容器名/ID docker restart 容器名/ID # 删除容器(必须先停) docker rm 容器名 # 删除镜像 docker rmi 镜像名/ID 二、 查看与进入容器 # 查看运行中的容器 docker ps # 查看所有容器(包括停止的) docker ps -a # 进入容器交互终端 docker exec -it 容器名 /bin/bash # 有些镜像用 sh docker exec -it 容器名 sh # .... 有更新! Docker 基础 server
openvpn基于docker部署。 #!/bin/bash set -e # 遇到错误立即退出 # ====================== 可自定义变量(修改这里!)====================== CONFIG_DIR="/data/openvpn" # OpenVPN 配置目录 PUBLIC_IP="47.109.91.216" # 你的服务器公网IP PROTO="udp" # 协议(可选:udp/tcp) PORT="1194" # 监听端口 # ===================================================================== # 颜色输出函数(方便看执行状态) red(){ echo -e "\033[31m$1\033[0m"; } green(){ echo -e "\033[32m$1\033[0m"; } yellow(){ echo -e "\033[33m$1\033[0m"; } blue(){ echo -e "\033[34m$1\033[0m"; } # 1. 检查基础依赖 gr.... 有更新! openvpn-docker-deploy server
Centos9 图文教程 注: 主要设置红色方框内容 用户root密码中设置建议密码需要连续点击两次完成才能设置成功,不推荐生产环境使用建议密码。图形化的界面是选择带GUI的、 生产环境服务器一般选择最小安装会保留一些基本的功能。 安装过程截图 这些选择重启就安装完了 有更新! Centos9 system
Linux 系统性能 & 故障排查 一、系统负载高排查 先看负载,再区分 CPU / 内存 / IO 瓶颈,用 top/ps 定位进程,iostat/vmstat 确认瓶颈,结合日志判断是业务问题、攻击还是资源不足。 1. 先看负载 uptime 当前时间 、系统运行了多久 、 负载 1 分钟、5分钟、15分钟。负载高不一定 CPU 高,可能是 IO 等待 / 锁等待。 这里数值应该小于cpu的核心数的0.7-0.8为正常、等于cpu的核心数则刚好跑满、大于cpu的核心数会开始拥堵。 load < 核心数:轻松 load ≈ 核心数:满负载,还能扛 load > 核心数:偏高,开始排队 load > 2× 核心数:严重拥堵,必卡 2. 区分类型 CPU 高 top 按 1 看多核 shift + P 按 CPU 排序 看是否死循环、爬虫、挖矿、压测 内存高 free -h shift + M 按内存排序看是否内存泄漏、OOM IO 高(% wa 高) iostat -x 1 iotop 常见:MySQL 刷盘、大量日志写入、磁盘坏道 上下文切换 / 中断高 vmstat .... 有更新! Linux 系统性能 & 故障排查 server
systemd 服务管理&日志排查 一、systemd 服务管理 1. 常用命令 # 查看服务状态 systemctl status 服务名称 # 启动/停止/重启/重载 systemctl start /stop /restart/ reload 服务名称 # 开机自启/取消自启 systemctl enable /disable 服务名称 # 查看所有正在运行的服务 systemctl list-units --type=service --state=running # 查看开机自启服务 systemctl list-unit-files | grep enabled 2. 服务起不来怎么排查? 看状态提示 systemctl status nginx -l 看系统日志 journalctl -u nginx -f 看应用自身日志 /var/log/nginx/error.log 常见原因: 配置文件写错 端口被占用 权限不足 cup或者内存不够 磁盘满 /inode 满 二、 日志排查神器 1. 实时看日志 journalctl -f 2. 只看某个服务 jo.... 有更新! systemd 服务管理 & 日志排查 server
Nginx 一、 基础命令 nginx nginx # 启动 nginx -s stop # 快速停止 nginx -s quit # 优雅停止 nginx -s reload # 热重载配置(不中断业务) nginx -s reopen # 重新打开日志文件 nginx -t # 检查配置语法 nginx -V # 查看编译参数、模块 systemctl systemctl status nginx # 查看 Nginx 状态 systemctl start nginx # 启动 systemctl stop nginx # 停止 systemctl restart nginx # 重启(先停再起) systemctl reload nginx # 重载配置(不中断业务,优先用这个) systemctl enable nginx # 设置开机自启 systemctl enable nginx --now # 设置开机自启并且立即启动 systemctl disable nginx # 关闭开机自启 nginx -t # 检查配置语法 二、核心配置结构 # 全局块 user ngi.... 有更新! Nginx 基础 server
Mysql 一、常用命令 # 登录 mysql -uroot -p # 登录并指定库 mysql -uroot -p 库名 # 远程登陆数据库 mysql -h192.168.33.6 -P3306 -uroot -p # 退出 exit; 或 quit; 二、库和表基础 -- 查看所有库 SHOW DATABASES; -- 进入库 USE 库名; -- 查看库中表 SHOW TABLES; -- 查看表结构 DESC 表名; -- 查看创建表语句 SHOW CREATE TABLE 表名; 三、用户与权限 -- 创建用户 CREATE USER 'user'@'%' IDENTIFIED BY 'password'; -- 授权所有库所有权限 GRANT ALL ON *.* TO 'user'@'%'; -- 刷新权限 FLUSH PRIVILEGES; -- 查看当前用户 SELECT USER(); -- 查看某用户权限 SHOW GRANTS FOR 'user'@'%'; -- 查询用户(系统表) SELECT * FROM mysql.user WHERE user.... 有更新! Mysql 基础 server
Mysql 主从同步 一、实现原理 主库(Master):负责写(增删改) 从库(Slave):负责读(查询)、备份、高可用 **原理:**主库生成 binlog → 从库拉取并执行,实现数据一致 二、必备条件 主从 MySQL 版本最好一致 主从服务器网络互通 主库开启 binlog 主库创建复制专用账号(REPLICATION SLAVE) 三、完整搭建步骤 1. 主库配置(my.cnf/my.ini) [mysqld] # 必须开启binlog log_bin=mysql-bin # 唯一ID,不能和从库一样 server_id=1 # 要同步的库(可选) # binlog_do_db = test # 忽略的库(可选) binlog_ignore_db = mysql binlog_ignore_db = information_schema binlog_ignore_db = performance_schema # 以下可选,建议加上 expire_logs_days = 7 binlog_format = ROW 重启主节点 mysql systemctl resta.... 有更新! Mysql 主从同步 server
Docker Compose 基础 概述: 用一个 YAML 文件,一键启动 / 停止 / 管理多个容器 一、 核心命令 # 查看版本 docker compose -v docker compose version # 查看服务 docker compose ps # 后台启动所有服务 docker compose up -d # 停止所有服务的容器 docker compose stop # 删除所有服务的容器、网络 docker compose down # 查看日志 docker compose logs -f # 重启服务 docker compose restart # 重建镜像后重新启动(改了 Dockerfile 用这个) docker compose up -d --build # 只启动某个服务 docker compose up -d nginx # 进入容器 docker compose exec 服务名 bash # 拉取最新镜像 docker compose pull # 查看服务运行的进程 docker compose top # 验证 docker-co.... 有更新! Docker Compose 基础 server
V2raya 部署(Docker) 一、 环境准备 Linux 系统 Docker 环境 :Docker 基础 - zhongts 的个人博客 镜像:通过网盘分享的文件:v2ray.tar 链接:百度网盘 二、 开始安装 1. 加载镜像 docker load -i v2ray.tar 2. 运行命令 docker run -d \ --restart=always \ --privileged \ --network=host \ --name v2raya \ -e V2RAYA_LOG_FILE=/tmp/v2raya.log \ -e V2RAYA_V2RAY_BIN=/usr/local/bin/v2ray \ -e V2RAYA_NFTABLES_SUPPORT=off \ -e IPTABLES_MODE=legacy \ -v /lib/modules:/lib/modules:ro \ -v /etc/resolv.conf:/etc/resolv.conf \ -v /etc/v2raya:/etc/v2raya \ mzz2017/v2raya:latest .... 有更新! V2raya 部署 server
OpenClaw 概述: linux 部署 安装OpenClaw 1. 安装 Node.js(必须 v22 版本) curl -fsSL https://rpm.nodesource.com/setup_22.x | bash yum install -y nodejs openclaw setup [root@openclaw openclaw]# openclaw setup 🦞 OpenClaw 2026.4.11 (769908e) — The only crab in your contacts you actually want to hear from. 🦞 Wrote ~/.openclaw/openclaw.json Workspace OK: ~/.openclaw/workspace Sessions OK: ~/.openclaw/agents/main/sessions 2. 安装 OpenClaw npm install -g openclaw 3. 初始化 openclaw onboard 向导步骤 API Key:获取(可以前往厂商注册创建).... 有更新! OpenClaw ai
Ollama本地模型 windows 部署 https://release-assets.githubusercontent.com/github-production-release-asset/658928958/a0a7cb2e-03b6-40b5-a107-b5b6a5cbefb8?sp=r&sv=2018-11-09&sr=b&spr=https&se=2026-04-14T11%3A45%3A37Z&rscd=attachment%3B+filename%3DOllamaSetup.exe&rsct=application%2Foctet-stream&skoid=96c2d410-5711-43a1-aedd-ab1947aa7ab0&sktid=398a6654-997b-47e9-b12b-9515b896b4de&skt=2026-04-14T10%3A44%3A40Z&ske=2026-04-14T11%3A45%3A37Z&sks=b&skv=2018-11-09&a.... 有更新! Ollama本地模型 ai
交换机配置 防火墙做外网入口,三层交换机做内网大脑,全用傻瓜交换机分线,按部门划 VLAN 隔离,用 ACL 做权限管控,DHCP 自动发 IP,服务器手动固定 IP。 VLAN10 办公:G0/0/2 - G0/0/3 ACL规则:仅能上外网、允许访问服务器 80/443 网页,禁止访问其他任何内网网段 VLAN20 技术:G0/0/4 - G0/0/5 ACL规则规则:全网放行,可自由访问所有内网网段 + 外网 VLAN30 服务器:G0/0/6 - G0/0/8 ACL规则规则:允许技术、监控全量访问;办公仅能访问 80/443 网页;服务器可上外网,拒绝其他非法访问 VLAN40 财务:G0/0/9 ACL规则规则:仅允许访问外网,完全内网隔离,不能访问其他网段,其他网段也不能访问财务 VLAN50 监控:G0/0/10 ACL规则规则:可访问服务器网段、可上外网,禁止访问办公 / 技术 / 财务其他内网网段 一、轻量拓扑图 二、交换机命令 system-view // 进入系统配置模式(进入后才能配置全局参数) sysname core-sw // 修改交换机设备名称为cor.... 有更新! 交换机配置 network
CentOS Stream 9 企业级 Kubernetes 高可用集群部署文档 一、环境信息 1.1 主机架构(明确分节点执行角色) 角色IP 地址主机名执行角色 Master1192.168.1.53master1主节点 Master2192.168.1.54master2备节点 Master3192.168.1.55master3备节点 Worker1192.168.1.56worker1工作节点 Worker2192.168.1.57worker2工作节点 Worker3192.168.1.58worker3工作节点 Worker4192.168.1.59worker4工作节点 Worker5192.168.1.60worker5工作节点 VIP192.168.1.200-虚拟 IP 代理服务器192.168.1.119-镜像代理 1.2 完整端口表(必看,避免端口冲突) 端口用途 22SSH 80HAProxy 业务入口 6443kube-apiserver 16443HAProxy 代理 APIServer 2379/2380etcd 集群 30325Ingress-Ngi.... 有更新! CentOS Stream 9 Kubernetes 高可用集群部署文档 server
Zabbix部署 一、概述 节点: zabbix-server端:Docker zabbix-agent端:yum 端口: zabbix-server: 10051 zabbix-agent: 10050 zabbix-web: 8080 二、部署 server端 mkdir /opt/zabbix cd /opt/zabbix vi docker-compose.yaml version: '3.8' services: mysql: image: mysql:8.0 container_name: zabbix-mysql restart: always environment: MYSQL_ROOT_PASSWORD: zabbix MYSQL_DATABASE: zabbix MYSQL_USER: zabbix MYSQL_PASSWORD: zabbix command: --default-authentication-plugin=mysql_native_password networks: - zabbix-net healthcheck: test: ["CMD.... 有更新! Zabbix部署 server