宇恒一号官网
This commit is contained in:
56
deploy.sh
Normal file
56
deploy.sh
Normal file
@@ -0,0 +1,56 @@
|
||||
#!/usr/bin/env bash
|
||||
# 一键部署 api、web、admin 三个服务(Docker)
|
||||
# 用法:
|
||||
# 本地/当前机部署:./deploy.sh
|
||||
# 部署到远程机: DEPLOY_HOST=user@192.168.10.241 ./deploy.sh
|
||||
set -e
|
||||
ROOT="$(cd "$(dirname "$0")" && pwd)"
|
||||
cd "$ROOT"
|
||||
|
||||
echo "=========================================="
|
||||
echo " yh_web 部署 (api + web + admin)"
|
||||
echo " 域名: https://yuheng.yuxindazhineng.com"
|
||||
echo "=========================================="
|
||||
|
||||
run_deploy() {
|
||||
local dir="$1"
|
||||
cd "$dir"
|
||||
if [ -f server/.env ]; then
|
||||
set -a
|
||||
source server/.env
|
||||
set +a
|
||||
echo "[OK] 已加载 server/.env"
|
||||
fi
|
||||
echo ""
|
||||
echo "[1/3] 构建镜像 (api + web + admin)..."
|
||||
docker compose build --no-cache 2>/dev/null || docker-compose build --no-cache
|
||||
echo ""
|
||||
echo "[2/3] 停止旧容器..."
|
||||
docker compose down 2>/dev/null || docker-compose down
|
||||
echo ""
|
||||
echo "[3/3] 启动三个服务 + Mongo..."
|
||||
docker compose up -d 2>/dev/null || docker-compose up -d
|
||||
cd "$ROOT"
|
||||
echo ""
|
||||
echo "=========================================="
|
||||
echo " 部署完成"
|
||||
echo " api:9527 web:9528 admin:9529"
|
||||
echo " 访问: https://yuheng.yuxindazhineng.com"
|
||||
echo "=========================================="
|
||||
}
|
||||
|
||||
if [ -n "$DEPLOY_HOST" ]; then
|
||||
echo "远程部署到: $DEPLOY_HOST"
|
||||
echo "同步项目目录..."
|
||||
rsync -az --delete \
|
||||
--exclude '.git' \
|
||||
--exclude 'node_modules' \
|
||||
--exclude 'web/dist' \
|
||||
--exclude 'admin/dist' \
|
||||
--exclude 'logs' \
|
||||
"$ROOT/" "$DEPLOY_HOST:${DEPLOY_PATH:-yh_web}/"
|
||||
echo "在远程执行部署..."
|
||||
ssh "$DEPLOY_HOST" "cd ${DEPLOY_PATH:-yh_web} && chmod +x deploy.sh && ./deploy.sh"
|
||||
else
|
||||
run_deploy "$ROOT"
|
||||
fi
|
||||
Reference in New Issue
Block a user