为了保护服务器 IP 地址等敏感信息,这些脚本已经过改造,支持通过配置文件或交互式输入来管理服务器信息。
-
复制配置模板
cp servers.conf.example servers.conf
-
编辑配置文件
# 使用您喜欢的编辑器打开 servers.conf vim servers.conf # 或 nano servers.conf
-
填写您的服务器信息
- 项目名称
- 服务器 IP 地址
- 用户名
- 部署路径
-
保护配置文件
chmod 600 servers.conf
如果您没有创建 servers.conf 文件,脚本会在运行时提示您输入服务器信息,并可选择保存配置供下次使用。
上传部署包到多个服务器
使用方法:
./upload.sh # 上传到所有服务器
./upload.sh -s server1 # 仅上传到指定服务器
./upload.sh -f custom.tar.gz # 上传自定义文件首次运行:
- 如果没有
servers.conf,会提示交互式配置 - 可以配置多个服务器
- 配置会保存到
servers.conf(已加入 .gitignore)
使用远程编译服务器编译并部署
使用方法:
./deploy-remote-build.sh配置项:
- 编译服务器信息(用户名、IP、构建目录)
- 目标服务器信息(用户名、IP、部署目录)
- 项目名称
特点:
- 在专用编译服务器上编译(性能更好)
- 支持直接分发或本地中转两种方式
- 编译完成后自动清理源代码
本地交叉编译并部署到远程服务器
使用方法:
./deploy-local-build.sh配置项:
- 远程服务器信息(用户名、IP、部署目录)
- 项目名称
特点:
- 在本地 Mac 上交叉编译
- 需要安装交叉编译工具链
- 适合快速迭代开发
在 Ubuntu 服务器上启动服务
使用方法:
./startup-ubuntu.sh [password]密码配置方式:
- 命令行参数:
./startup-ubuntu.sh <password> - 环境变量:
export WALLET_PASSWORD=xxx && ./startup-ubuntu.sh - 交互式输入:运行时提示输入
在 Ubuntu 服务器上停止服务
使用方法:
./stop-ubuntu.sh特点:
- 优雅关闭(等待清仓)
- 超时后提示强制停止选项
在本地 Mac 上启动 Redis
使用方法:
./start-redis-local.sh特点:
- 使用 Unix Socket 连接
- 自动检查并安装 Redis(通过 Homebrew)
- 守护进程模式运行
在 Ubuntu 服务器上启动 Redis
使用方法:
./start-redis-ubuntu.sh在 Ubuntu 服务器上安装 Redis
使用方法:
./install-redis-ubuntu.sh检查脚本中的敏感信息
使用方法:
./check-sensitive-info.sh检查项:
- 硬编码的 IP 地址
- 硬编码的项目名称
- 配置文件权限
- Git 跟踪状态
-
配置文件已被加入 .gitignore
servers.conf不会被提交到 Git- 您的服务器信息保持私密
-
配置文件权限
- 建议设置为 600(仅所有者可读写)
chmod 600 servers.conf
-
模板文件
servers.conf.example是模板文件,可以安全提交- 不包含任何真实的服务器信息
-
敏感信息检查
- 脚本已移除所有硬编码的 IP 地址
- 项目名称通过配置文件管理
- SSH 命令不再显示完整的服务器信息
# 项目配置
PROJECT_NAME="your-project-name"
# 编译服务器配置(用于 deploy-remote-build.sh)
BUILD_SERVER_USER="ubuntu"
BUILD_SERVER_HOST="your.build.server.ip"
BUILD_DIR="~/your-project-build"
# 目标服务器配置(用于 deploy-remote-build.sh)
TARGET_SERVER_USER="root"
TARGET_SERVER_HOST="your.target.server.ip"
TARGET_SERVER_DIR="/root/your-project"
# 部署服务器列表(用于 upload.sh)
DEPLOY_SERVERS=(
"server1:user@host1:~/path1"
"server2:user@host2:~/path2"
)
# 远程服务器配置(用于 deploy-local-build.sh)
REMOTE_USER="root"
REMOTE_HOST="your.remote.server.ip"
REMOTE_DIR="~/your-project"如果脚本提示找不到配置文件:
- 检查是否在正确的目录运行脚本
- 确认
servers.conf文件存在 - 或选择交互式配置
如果遇到权限错误:
chmod +x *.sh
chmod 600 servers.conf确保您的 SSH 密钥已配置:
ssh-copy-id user@server-ip查看 QUICKSTART.md 获取 5 分钟快速配置指南。
upload.sh- 上传部署包到服务器deploy-remote-build.sh- 使用远程编译服务器部署deploy-local-build.sh- 本地编译并部署
startup-ubuntu.sh- 启动服务stop-ubuntu.sh- 停止服务
start-redis-local.sh- 启动本地 Redisstart-redis-ubuntu.sh- 启动服务器 Redisinstall-redis-ubuntu.sh- 安装 Redis
check-sensitive-info.sh- 安全检查工具