init: UserBaseService (backend + deploy + scripts)

This commit is contained in:
chenxing
2026-08-10 14:50:22 +08:00
commit 4ec19486e0
234 changed files with 15604 additions and 0 deletions
+40
View File
@@ -0,0 +1,40 @@
#!/usr/bin/env bash
# 一键部署:上传编排文件 -> SSH 到服务器拉取镜像并启动
# 用法: ./deploy.sh [app_tag] [front_tag]
# 前置环境变量: DEPLOY_HOST, SSHPASS(可选 ACR_NAMESPACE / DEPLOY_USER / REMOTE_DIR)
# 注:服务器需已 docker login registry.cn-hangzhou.aliyuncs.com
set -euo pipefail
APP_VERSION="${1:-${APP_VERSION:-userbase-v1.0}}"
FRONT_VERSION="${2:-${FRONT_VERSION:-userbase-front-v1.0}}"
HOST="${DEPLOY_HOST:?请设置 DEPLOY_HOST}"
PORT="${DEPLOY_PORT:-22}"
USER="${DEPLOY_USER:-yunhai}"
REMOTE_DIR="${REMOTE_DIR:-/opt/docker/userbase}"
NAMESPACE="${ACR_NAMESPACE:-damaomi_docker}"
REGISTRY="${ACR_REGISTRY:-registry.cn-hangzhou.aliyuncs.com}"
PY="${PYTHON_BIN:-python3}"
cd "$(dirname "$0")"
echo "== 1/2 上传 compose 到 $HOST:$REMOTE_DIR =="
"$PY" upload.py "$HOST" "$PORT" "$USER" \
docker-compose.userbase.yml "$REMOTE_DIR/docker-compose.userbase.yml"
echo "== 2/2 远端拉取镜像并启动 =="
"$PY" remote_run.py "$HOST" "$PORT" "$USER" <<EOF
set -e
mkdir -p "$REMOTE_DIR/upload-data"
cd "$REMOTE_DIR"
cat > .env <<ENV
ACR_REGISTRY=$REGISTRY
ACR_NAMESPACE=$NAMESPACE
APP_VERSION=$APP_VERSION
FRONT_VERSION=$FRONT_VERSION
ENV
docker compose -f docker-compose.userbase.yml pull
docker compose -f docker-compose.userbase.yml up -d
docker image prune -f
docker ps --filter name=userbase --format "table {{.Names}}\t{{.Status}}"
echo DEPLOY_OK
EOF