- 添加双 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)
105 lines
2.7 KiB
Bash
105 lines
2.7 KiB
Bash
#!/bin/bash
|
|
|
|
# Sub2API 自动部署脚本 - 端口 2080
|
|
# 使用方法: bash deploy.sh
|
|
|
|
set -e
|
|
|
|
echo "====================================="
|
|
echo " Sub2API 自动部署脚本"
|
|
echo " 端口: 2080"
|
|
echo "====================================="
|
|
echo ""
|
|
|
|
# 检查是否在正确的目录
|
|
if [ ! -f "docker-compose.2080.yml" ]; then
|
|
echo "❌ 错误: 请在包含 docker-compose.2080.yml 的目录中运行此脚本"
|
|
exit 1
|
|
fi
|
|
|
|
# 检查 Docker 是否安装
|
|
if ! command -v docker &> /dev/null; then
|
|
echo "❌ Docker 未安装,请先安装 Docker"
|
|
exit 1
|
|
fi
|
|
|
|
if ! command -v docker-compose &> /dev/null; then
|
|
echo "❌ Docker Compose 未安装,请先安装 Docker Compose"
|
|
exit 1
|
|
fi
|
|
|
|
echo "✅ Docker 环境检查通过"
|
|
echo ""
|
|
|
|
# 复制配置文件
|
|
if [ ! -f ".env" ]; then
|
|
echo "📝 创建配置文件..."
|
|
cp .env.2080 .env
|
|
|
|
# 生成随机密码和密钥
|
|
echo "🔐 生成安全密钥..."
|
|
POSTGRES_PASS=$(openssl rand -base64 24)
|
|
JWT_KEY=$(openssl rand -hex 32)
|
|
|
|
# 更新 .env 文件
|
|
sed -i "s/POSTGRES_PASSWORD=.*/POSTGRES_PASSWORD=${POSTGRES_PASS}/" .env
|
|
sed -i "s/JWT_SECRET=.*/JWT_SECRET=${JWT_KEY}/" .env
|
|
|
|
echo "✅ 配置文件已创建: .env"
|
|
echo ""
|
|
echo "📋 生成的密码(请保存):"
|
|
echo " PostgreSQL 密码: ${POSTGRES_PASS}"
|
|
echo ""
|
|
else
|
|
echo "⚠️ .env 文件已存在,跳过创建"
|
|
echo ""
|
|
fi
|
|
|
|
# 复制 docker-compose 文件
|
|
if [ ! -f "docker-compose.yml" ]; then
|
|
echo "📝 创建 docker-compose.yml..."
|
|
cp docker-compose.2080.yml docker-compose.yml
|
|
echo "✅ docker-compose.yml 已创建"
|
|
echo ""
|
|
fi
|
|
|
|
# 拉取镜像
|
|
echo "📥 拉取 Docker 镜像..."
|
|
docker-compose pull
|
|
|
|
# 启动服务
|
|
echo ""
|
|
echo "🚀 启动服务..."
|
|
docker-compose up -d
|
|
|
|
# 等待服务启动
|
|
echo ""
|
|
echo "⏳ 等待服务启动..."
|
|
sleep 10
|
|
|
|
# 检查服务状态
|
|
echo ""
|
|
echo "📊 服务状态:"
|
|
docker-compose ps
|
|
|
|
echo ""
|
|
echo "====================================="
|
|
echo " ✅ 部署完成!"
|
|
echo "====================================="
|
|
echo ""
|
|
echo "📝 访问信息:"
|
|
echo " URL: http://$(hostname -I | awk '{print $1}'):2080"
|
|
echo " 管理员邮箱: admin@example.com"
|
|
echo " 管理员密码: admin123"
|
|
echo ""
|
|
echo "⚠️ 安全建议:"
|
|
echo " 1. 登录后立即修改管理员密码"
|
|
echo " 2. 如需修改配置,编辑 .env 文件后执行: docker-compose restart"
|
|
echo ""
|
|
echo "📋 常用命令:"
|
|
echo " 查看日志: docker-compose logs -f"
|
|
echo " 重启服务: docker-compose restart"
|
|
echo " 停止服务: docker-compose down"
|
|
echo ""
|
|
echo "🎉 部署完成!请在浏览器中访问上述 URL"
|