docs: Server-Operations — универсальное развёртывание без привязки к домену
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
+1
-1
@@ -6,7 +6,7 @@ source "$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)/shop-root.sh"
|
||||
|
||||
if [ ! -d .git ]; then
|
||||
echo "Ошибка: в $SHOP_ROOT нет .git — нужен полный clone:"
|
||||
echo " git clone https://git.evilfox.cc/test/shop10.git /opt/shop/shop10"
|
||||
echo " git clone <URL-репозитория> /opt/shop"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
|
||||
@@ -19,10 +19,11 @@ if [ ! -f "$SHOP_ROOT/package.json" ]; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# .env: shop10 или старый /opt/shop
|
||||
if [ ! -f "$SHOP_ROOT/.env" ] && [ -f /opt/shop/.env ]; then
|
||||
cp /opt/shop/.env "$SHOP_ROOT/.env"
|
||||
echo "Скопирован .env из /opt/shop"
|
||||
# .env в родительском каталоге (если переносили клон)
|
||||
PARENT_ENV="$(dirname "$SHOP_ROOT")/.env"
|
||||
if [ ! -f "$SHOP_ROOT/.env" ] && [ -f "$PARENT_ENV" ]; then
|
||||
cp "$PARENT_ENV" "$SHOP_ROOT/.env"
|
||||
echo "Скопирован .env из $(dirname "$SHOP_ROOT")"
|
||||
fi
|
||||
|
||||
if [ ! -f "$SHOP_ROOT/.env" ]; then
|
||||
|
||||
@@ -2,12 +2,12 @@
|
||||
# Быстрое развёртывание / обновление на Ubuntu (без Docker)
|
||||
# sudo bash scripts/quick-deploy-ubuntu.sh
|
||||
#
|
||||
# Каталог по умолчанию: /opt/shop/shop10
|
||||
# Переопределение: SHOP_INSTALL_DIR=/opt/shop/shop10 SHOP_GIT_URL=https://...
|
||||
# Каталог: SHOP_INSTALL_DIR (по умолчанию /opt/shop)
|
||||
# URL репозитория: SHOP_GIT_URL (обязателен при первом clone)
|
||||
set -euo pipefail
|
||||
|
||||
INSTALL_DIR="${SHOP_INSTALL_DIR:-/opt/shop/shop10}"
|
||||
GIT_URL="${SHOP_GIT_URL:-https://git.evilfox.cc/test/shop10.git}"
|
||||
INSTALL_DIR="${SHOP_INSTALL_DIR:-/opt/shop}"
|
||||
GIT_URL="${SHOP_GIT_URL:-}"
|
||||
|
||||
if [ "$(id -u)" -ne 0 ]; then
|
||||
echo "Запустите от root: sudo bash scripts/quick-deploy-ubuntu.sh"
|
||||
@@ -26,7 +26,13 @@ if ! command -v node >/dev/null; then
|
||||
fi
|
||||
|
||||
if [ ! -f "$INSTALL_DIR/package.json" ]; then
|
||||
echo "Клонирование репозитория..."
|
||||
if [ -z "$GIT_URL" ]; then
|
||||
echo "Задайте URL репозитория:"
|
||||
echo " export SHOP_GIT_URL='https://ваш-forge/user/shop.git'"
|
||||
echo " sudo SHOP_GIT_URL=\"\$SHOP_GIT_URL\" bash scripts/quick-deploy-ubuntu.sh"
|
||||
exit 1
|
||||
fi
|
||||
echo "Клонирование: $GIT_URL -> $INSTALL_DIR"
|
||||
mkdir -p "$(dirname "$INSTALL_DIR")"
|
||||
git clone "$GIT_URL" "$INSTALL_DIR"
|
||||
fi
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
#!/bin/bash
|
||||
# Обновление на сервере: git pull, npm, restart shop
|
||||
# bash /opt/shop/shop10/scripts/server-update.sh
|
||||
# bash "$SHOP_ROOT/scripts/server-update.sh"
|
||||
set -euo pipefail
|
||||
|
||||
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||
@@ -11,9 +11,10 @@ echo "=== Shop update: $SHOP_ROOT ==="
|
||||
|
||||
if [ ! -d .git ]; then
|
||||
echo "Ошибка: $SHOP_ROOT не git-репозиторий (нет .git)."
|
||||
echo "Если код только в /opt/shop/shop10 без git — переустановите:"
|
||||
echo " mv /opt/shop/shop10 /opt/shop/shop10.bak"
|
||||
echo " git clone https://git.evilfox.cc/test/shop10.git /opt/shop/shop10"
|
||||
echo "Если нет .git — клонируйте заново:"
|
||||
echo " export SHOP_GIT_URL='<URL-репозитория>'"
|
||||
echo " mv \"$SHOP_ROOT\" \"\${SHOP_ROOT}.bak\""
|
||||
echo " git clone \"\$SHOP_GIT_URL\" \"$SHOP_ROOT\""
|
||||
exit 1
|
||||
fi
|
||||
|
||||
|
||||
@@ -6,16 +6,16 @@ _resolve_shop_root() {
|
||||
for d in \
|
||||
"${SHOP_ROOT:-}" \
|
||||
"$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)" \
|
||||
"/opt/shop/shop10" \
|
||||
"/opt/shop"; do
|
||||
"/opt/shop" \
|
||||
"/opt/shop/app"; do
|
||||
[ -z "$d" ] && continue
|
||||
[ -f "${d}/package.json" ] && [ -d "${d}/.git" ] && SHOP_ROOT="$d" && return 0
|
||||
done
|
||||
for d in \
|
||||
"${SHOP_ROOT:-}" \
|
||||
"$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)" \
|
||||
"/opt/shop/shop10" \
|
||||
"/opt/shop"; do
|
||||
"/opt/shop" \
|
||||
"/opt/shop/app"; do
|
||||
[ -z "$d" ] && continue
|
||||
[ -f "${d}/package.json" ] && SHOP_ROOT="$d" && return 0
|
||||
done
|
||||
@@ -24,8 +24,9 @@ _resolve_shop_root() {
|
||||
|
||||
if ! _resolve_shop_root; then
|
||||
echo "Ошибка: не найден каталог Shop (нет package.json)."
|
||||
echo " git clone https://git.evilfox.cc/test/shop10.git /opt/shop/shop10"
|
||||
echo " SHOP_ROOT=/opt/shop/shop10 bash scripts/server-update.sh"
|
||||
echo " export SHOP_ROOT=/opt/shop # каталог с package.json"
|
||||
echo " git clone <URL-репозитория> \"\$SHOP_ROOT\""
|
||||
echo " SHOP_ROOT=\$SHOP_ROOT bash scripts/server-update.sh"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
|
||||
Reference in New Issue
Block a user