Files
soul-yongping/.cursor/skills/security-server-ops/SKILL.md

5.6 KiB
Raw Blame History

description
description
Soul 服务器操作与部署。部署脚本、SSH、宝塔、环境变量。Use when 部署、服务器操作、SSH、宝塔、devloy、master、Cunkebao 部署.

SKILL - 服务器操作与部署(安全工程师)

Soul 项目部署脚本索引与服务器操作规范。密码等敏感信息仅通过环境变量或脚本内 get_cfg() 读取,不在此文档明文列出。

何时使用

触发词 动作
帮我部署一版全项目到线上 先部署 APIcd soul-api && python master.py执行完毕后再部署管理端cd soul-admin && python master.py,均为正式环境,顺序执行不并行
帮我部署api到线上 直接执行 cd soul-api && python master.py
管理端帮我部署到xx环境 语义化解析 xx直接执行:含「正式」「线上」「生产」→ cd soul-admin && python master.py含「测试」「dev」→ cd soul-admin && python deploy.py
部署、服务器操作、SSH 按本 Skill 选择对应脚本
宝塔、devloy、master 查阅部署配置与命令
Cunkebao 部署 使用 Cunkebao 专用脚本

一、服务器与配置来源

1.1 配置读取优先级

各部署脚本统一约定:

  1. 环境变量(推荐):DEPLOY_HOSTDEPLOY_USERDEPLOY_PASSWORDDEPLOY_SSH_PORTBT_API_KEY
  2. 脚本内 get_cfg():无环境变量时使用脚本默认值
  3. master.pysoul-api 的 miner_guard_check、remove_xmrig_self 等从 soul-api/master.pyget_cfg() 读取

1.2 服务器索引(配置来源,不含明文密码)

项目 主机 端口 用户 配置来源
soul-api 正式 43.139.27.93 22022 root master.py / 环境变量
soul-api 测试 43.139.27.93 22022 root devloy.py / 环境变量
soul-admin 正式 43.139.27.93 22022 root soul-admin/master.py / 环境变量
soul-admin 测试 43.139.27.93 22022 root soul-admin/deploy.py / 环境变量
Cunkebao 42.194.245.239 6523 yongpxu Cunkebao/miner_guard_install.py 内嵌

密码:从 DEPLOY_PASSWORD 或各脚本 get_cfg() 默认值读取,不在此文档记录


二、部署脚本索引

2.1 soul-api

脚本 用途 命令示例
soul-api/devloy.py 测试环境部署binary/docker/runner python devloy.py --mode runner
soul-api/master.py 正式环境部署 python master.py
soul-api/deploy/runner-init.sh Runner 容器首次初始化 bash deploy/runner-init.sh
soul-api/deploy/docker-deploy-remote.sh 服务器上执行蓝绿切换 由 devloy 自动调用
soul-api/deploy/deploy-runner-remote.sh Runner 模式部署包拷贝 由 devloy 自动调用

devloy 模式

  • --mode runner:容器内红蓝切换,宝塔固定 9001
  • --mode docker:宿主机蓝绿,需 Nginx 切换
  • --mode binaryGo 二进制 + 宝塔 soulDev

2.2 soul-admin

脚本 用途 命令示例
soul-admin/master.py 正式环境部署soul-adminpnpm build python master.py
soul-admin/deploy.py 测试环境部署soul-admin-devpnpm build:dev python deploy.py

2.3 挖矿防护

脚本 用途 命令示例
soul-api/miner_guard_install.py 安装挖矿守护soul 服务器) python miner_guard_install.py --yes
Cunkebao/miner_guard_install.py 安装挖矿守护Cunkebao cd Cunkebao && python miner_guard_install.py --yes

三、环境变量一览

变量 说明 默认来源
DEPLOY_HOST SSH 主机 各脚本 get_cfg()
DEPLOY_USER SSH 用户 root
DEPLOY_PASSWORD SSH 密码 脚本默认 / 需设置
DEPLOY_SSH_KEY SSH 私钥路径
DEPLOY_SSH_PORT SSH 端口 22022
BT_PANEL_URL 宝塔面板 URL https://{host}:9988
BT_API_KEY 宝塔 API 密钥 脚本内默认
BT_GO_PROJECT_NAME 宝塔 Go 项目名 soulDev / soulApi
DEPLOY_DOCKER_PATH 部署目录 /www/wwwroot/self/soul-dev
DEPLOY_NGINX_CONF Nginx 配置路径 空(可自动探测)

四、常用操作

4.1 SSH 连接(示例,密码从环境变量读取)

# 设置环境变量后
$env:DEPLOY_HOST="43.139.27.93"
$env:DEPLOY_PASSWORD="<从安全存储读取>"
ssh -p 22022 root@43.139.27.93

4.2 部署 soul-api 测试环境Runner 模式)

cd e:\Gongsi\Mycontent\soul-api
python devloy.py --mode runner

4.3 部署 soul-api 正式环境

cd e:\Gongsi\Mycontent\soul-api
python master.py

4.4 部署 soul-admin 正式环境

cd e:\Gongsi\Mycontent\soul-admin
python master.py

4.4.1 全项目部署到线上API → 管理端,顺序执行)

# 1. 先部署 API
cd e:\Gongsi\Mycontent\soul-api
python master.py

# 2. API 执行完毕后再部署管理端
cd e:\Gongsi\Mycontent\soul-admin
python master.py

4.5 部署 soul-admin 测试环境

cd e:\Gongsi\Mycontent\soul-admin
python deploy.py

4.6 检查挖矿守护

cd e:\Gongsi\Mycontent\soul-api
python miner_guard_check.py

五、安全提醒

  • 不要将密码提交到 Gitmaster.py、devloy.py 等中的默认密码应迁移到环境变量
  • 宝塔 API 密钥BT_API_KEY 若泄露需在宝塔面板重新生成
  • 敏感文件.envmaster.py 等应加入 .gitignore 或使用 .env.example 模板