deploy.sh: 自动下载docker-compose.yml,真正一键部署

This commit is contained in:
2026-05-18 06:03:49 +08:00
parent d7c2a9cfad
commit 42d2b5bf1c

View File

@@ -1,13 +1,20 @@
#!/bin/bash
set -e
SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
cd "$SCRIPT_DIR"
# 如果 docker-compose.yml 不存在,自动下载
if [ ! -f docker-compose.yml ]; then
echo "📥 下载 docker-compose.yml..."
wget -q https://gitea.timxx.cn/admin/CloudSearch/raw/branch/master/source_clean/docker-compose.yml
fi
echo "🔍 检测 Redis..."
# 查找当前 docker-compose 网络内或全局已运行的 Redis 容器
EXISTING_REDIS=$(docker ps --format '{{.Names}}' | grep -i redis | head -1)
if [ -n "$EXISTING_REDIS" ]; then
# 检查它是否已在 cloudsearch-net 网络中
if docker network inspect cloudsearch-net --format '{{range .Containers}}{{.Name}} {{end}}' 2>/dev/null | grep -qw "$EXISTING_REDIS"; then
echo "✅ 已有 Redis: $EXISTING_REDIS (已加入 cloudsearch-net),跳过创建"
else
@@ -23,11 +30,14 @@ else
PROFILE="--profile full"
fi
echo "REDIS_URL=redis://${REDIS_HOST}:6379" > .env
echo "CORS_ORIGIN=https://zy.hk.timxx.cn" >> .env
echo "JWT_SECRET=cloudsearch-jwt-secret-2024" >> .env
echo "ADMIN_PASSWORD=0nL5kLhMIJ1121PYmQb25A" >> .env
echo "LOG_LEVEL=info" >> .env
# 生成 .env
cat > .env <<EOF
REDIS_URL=redis://${REDIS_HOST}:6379
CORS_ORIGIN=https://zy.hk.timxx.cn
JWT_SECRET=cloudsearch-jwt-secret-2024
ADMIN_PASSWORD=0nL5kLhMIJ1121PYmQb25A
LOG_LEVEL=info
EOF
echo ""
echo "🚀 启动服务..."