一键脚本
bash <(curl -sL kejilion.sh) fd www.2345.com 192.168.1.2 2233
- 192.168.1.2 源站ip
- 2233 源站端口
- www.2345.com 用户访问的域名
注意事项:
多域名注意修改配置文件中的 server_name 字段,添加其他域名,
证书要包含添加的域名,需要重新申请
管理已有配置
k web
重启生效
docker exec nginx nginx -s reload
查询Nginx缓存大小
docker exec nginx du -sh /var/cache/nginx/
查询缓存文件数量
docker exec nginx find /var/cache/nginx -type f | wc -l 2>/dev/null
转换成nginx
# 为 proxy 缓存创建目录并设置权限
sudo mkdir -p /var/cache/nginx/proxy
sudo chown -R nginx:nginx /var/cache/nginx
清理系统缓存
# 清理页面缓存
echo 1 > /proc/sys/vm/drop_caches
微调整缓存策略
# 增加缓存压力,让系统更积极地回收缓存
echo 'vm.vfs_cache_pressure = 150' >> /etc/sysctl.conf
# 保持当前的swappiness设置(已经很好了)
echo 'vm.swappiness = 10' >> /etc/sysctl.conf
# 使设置生效
sysctl -p
监控脚本
# 创建监控脚本
cat > /usr/local/bin/memory_monitor.sh << 'EOF'
#!/bin/bash
MEMORY_USAGE=$(free | grep Mem | awk '{printf "%.0f", $3/$2 * 100}')
if [ $MEMORY_USAGE -gt 80 ]; then
echo "Memory usage is ${MEMORY_USAGE}%, clearing cache..."
echo 1 > /proc/sys/vm/drop_caches
logger "Memory cache cleared due to high usage: ${MEMORY_USAGE}%"
fi
EOF
chmod +x /usr/local/bin/memory_monitor.sh
# 设置每5分钟检查一次
echo "*/5 * * * * /usr/local/bin/memory_monitor.sh" | crontab -
一行命令快速查看内存占用最高的进程
ps aux | sort -k4 -nr | head -10
查看缓存大小
du -sh /var/cache/nginx/proxy/
清空现有缓存
sudo rm -rf /var/cache/nginx/proxy/*
重启nginx
sudo nginx -t && sudo systemctl restart nginx
nginx配置
https://github.com/woniu336/cf-cdn-s/blob/main/oth/nginx.conf
站点配置
https://github.com/woniu336/cf-cdn-s/blob/main/oth/conf.d/www.2345.cc.conf
备份
curl -sS -O https://raw.githubusercontent.com/woniu336/cf-cdn-s/main/backup-nginx-ssl.sh &&chmod +x backup-nginx-ssl.sh && ./backup-nginx-ssl.sh