feat: 添加二次开发部署配置和文档
Some checks failed
CI / test (push) Has been cancelled
CI / golangci-lint (push) Has been cancelled

- 添加双 Git remote 配置指南 (GIT_GUIDE.md, GIT_WORKFLOW.md)
- 添加 1Panel 环境部署配置 (docker-compose.1panel.yml, .env.1panel)
- 添加自动化部署脚本 (deploy-complete.sh, deploy-dev.sh, deploy.sh)
- 添加部署说明文档 (README_DEPLOY.md)
- 配置端口 2080 映射
- 支持连接现有 1Panel Redis (1Panel-redis-S1KH)
This commit is contained in:
huangzhenpc
2026-01-04 10:25:36 +08:00
parent 631ba25e04
commit e4db851b31
8 changed files with 1439 additions and 0 deletions

120
deploy/deploy-dev.sh Normal file
View File

@@ -0,0 +1,120 @@
#!/bin/bash
# Sub2API 二次开发部署脚本
# 使用方法: bash deploy-dev.sh
set -e
echo "====================================="
echo " Sub2API 二开版本部署"
echo " 端口: 2080"
echo "====================================="
echo ""
# 检查是否在 Git 仓库中
if [ ! -d ".git" ]; then
echo "❌ 错误: 当前目录不是 Git 仓库"
echo "请在项目根目录运行此脚本"
exit 1
fi
echo "📦 当前 Git 信息:"
echo " 分支: $(git branch --show-current)"
echo " 最新提交: $(git log -1 --oneline)"
echo ""
# 进入 deploy 目录
cd deploy
# 检查配置文件
if [ ! -f "docker-compose.prod.yml" ]; then
echo "📝 创建生产环境配置..."
cp docker-compose.yml docker-compose.prod.yml
# 修改端口为 2080
sed -i 's/\${SERVER_PORT:-8080}/2080/' docker-compose.prod.yml
# 添加 extra_hosts 配置(连接宿主机 Redis
if ! grep -q "extra_hosts" docker-compose.prod.yml; then
sed -i '/depends_on:/i\ extra_hosts:\n - "host.docker.internal:host-gateway"' docker-compose.prod.yml
fi
# 修改 Redis 配置
sed -i 's/REDIS_HOST=redis/REDIS_HOST=host.docker.internal/' docker-compose.prod.yml
sed -i 's/REDIS_PASSWORD=\${REDIS_PASSWORD:-}/REDIS_PASSWORD=redis_bJFKDk/' docker-compose.prod.yml
sed -i 's/REDIS_DB=\${REDIS_DB:-0}/REDIS_DB=1/' docker-compose.prod.yml
echo "✅ docker-compose.prod.yml 已创建"
fi
# 创建 .env 文件
if [ ! -f ".env" ]; then
echo "🔐 生成配置文件..."
cat > .env << EOF
# PostgreSQL 配置
POSTGRES_USER=sub2api
POSTGRES_PASSWORD=$(openssl rand -base64 24)
POSTGRES_DB=sub2api
# 管理员账号
ADMIN_EMAIL=admin@example.com
ADMIN_PASSWORD=admin123
# JWT 配置
JWT_SECRET=$(openssl rand -hex 32)
JWT_EXPIRE_HOUR=24
# 其他配置
TZ=Asia/Shanghai
SERVER_MODE=release
RUN_MODE=standard
EOF
echo "✅ .env 文件已创建"
echo ""
echo "📋 生成的配置(请保存):"
cat .env | grep -E "POSTGRES_PASSWORD|JWT_SECRET"
echo ""
else
echo "⚠️ .env 已存在,跳过创建"
fi
# 拉取镜像
echo ""
echo "📥 拉取 Docker 镜像..."
docker-compose -f docker-compose.prod.yml pull
# 启动服务
echo ""
echo "🚀 启动服务..."
docker-compose -f docker-compose.prod.yml up -d
# 等待启动
echo ""
echo "⏳ 等待服务启动..."
sleep 10
# 显示状态
echo ""
echo "📊 服务状态:"
docker-compose -f docker-compose.prod.yml ps
echo ""
echo "====================================="
echo " ✅ 部署完成!"
echo "====================================="
echo ""
echo "📝 访问信息:"
echo " URL: http://$(hostname -I | awk '{print $1}'):2080"
echo " 管理员: admin@example.com / admin123"
echo ""
echo "📋 常用命令:"
echo " 查看日志: docker-compose -f docker-compose.prod.yml logs -f"
echo " 重启服务: docker-compose -f docker-compose.prod.yml restart"
echo " 停止服务: docker-compose -f docker-compose.prod.yml down"
echo ""
echo "🔄 同步官方更新:"
echo " git fetch upstream"
echo " git merge upstream/main"
echo ""