mirror of
https://github.com/deadcxap/init_scripts.git
synced 2026-07-02 05:43:40 +03:00
много эхо в отладку инит
This commit is contained in:
+27
-2
@@ -12,38 +12,60 @@
|
|||||||
|
|
||||||
set -euo pipefail
|
set -euo pipefail
|
||||||
|
|
||||||
|
echo "======== переменные ============="
|
||||||
SELF_PATH="$(readlink -f "$0" 2>/dev/null || realpath "$0" 2>/dev/null || printf '%s\n' "$0")"
|
SELF_PATH="$(readlink -f "$0" 2>/dev/null || realpath "$0" 2>/dev/null || printf '%s\n' "$0")"
|
||||||
|
echo "SELF_PATH = $SELF_PATH"
|
||||||
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||||
|
echo "SCRIPT_DIR = $SCRIPT_DIR"
|
||||||
COMPOSE_FILE="$SCRIPT_DIR/docker-compose.yml"
|
COMPOSE_FILE="$SCRIPT_DIR/docker-compose.yml"
|
||||||
|
echo "COMPOSE_FILE = $COMPOSE_FILE"
|
||||||
SITE_DIR="$SCRIPT_DIR/site"
|
SITE_DIR="$SCRIPT_DIR/site"
|
||||||
|
echo "SITE_DIR = $SITE_DIR"
|
||||||
SITE_BAC_DIR="$SCRIPT_DIR/site_bac"
|
SITE_BAC_DIR="$SCRIPT_DIR/site_bac"
|
||||||
|
echo "SITE_BAC_DIR = $SITE_BAC_DIR"
|
||||||
CERT_DIR="$SITE_DIR/certs"
|
CERT_DIR="$SITE_DIR/certs"
|
||||||
|
echo "CERT_DIR = $CERT_DIR"
|
||||||
CERT_FILE="$CERT_DIR/certchain.pem"
|
CERT_FILE="$CERT_DIR/certchain.pem"
|
||||||
|
echo "CERT_FILE = $CERT_FILE"
|
||||||
KEY_FILE="$CERT_DIR/key.pem"
|
KEY_FILE="$CERT_DIR/key.pem"
|
||||||
|
echo "KEY_FILE = $KEY_FILE"
|
||||||
ENV_FILE="$SCRIPT_DIR/.env-node"
|
ENV_FILE="$SCRIPT_DIR/.env-node"
|
||||||
|
echo "ENV_FILE = $ENV_FILE"
|
||||||
NGINX_TEMPLATE="$SCRIPT_DIR/nginx.conf.template"
|
NGINX_TEMPLATE="$SCRIPT_DIR/nginx.conf.template"
|
||||||
|
echo "NGINX_TEMPLATE = $NGINX_TEMPLATE"
|
||||||
NGINX_CONF="$SCRIPT_DIR/nginx.conf"
|
NGINX_CONF="$SCRIPT_DIR/nginx.conf"
|
||||||
|
echo "NGINX_CONF = $NGINX_CONF"
|
||||||
LOG_DIR="$SCRIPT_DIR/logs"
|
LOG_DIR="$SCRIPT_DIR/logs"
|
||||||
|
echo "LOG_DIR = $LOG_DIR"
|
||||||
LOGROTATE_DIR="/etc/logrotate.d"
|
LOGROTATE_DIR="/etc/logrotate.d"
|
||||||
|
echo "LOGROTATE_DIR = $LOGROTATE_DIR"
|
||||||
LOGROTATE_CONF="$LOGROTATE_DIR/remnanode"
|
LOGROTATE_CONF="$LOGROTATE_DIR/remnanode"
|
||||||
|
echo "LOGROTATE_CONF = $LOGROTATE_CONF"
|
||||||
|
echo "====================="
|
||||||
|
|
||||||
# --- Шаг 1: загрузка случайного шаблона сайта ---
|
# --- Шаг 1: загрузка случайного шаблона сайта ---
|
||||||
TMP_DIR=$(mktemp -d)
|
TMP_DIR=$(mktemp -d)
|
||||||
|
echo "TMP_DIR создан = $TMP_DIR"
|
||||||
trap 'rm -rf "$TMP_DIR"' EXIT
|
trap 'rm -rf "$TMP_DIR"' EXIT
|
||||||
git clone --depth 1 https://github.com/distillium/sni-templates "$TMP_DIR" >/dev/null 2>&1
|
git clone --depth 1 https://github.com/distillium/sni-templates "$TMP_DIR" >/dev/null 2>&1
|
||||||
TEMPLATE_DIR=$(find "$TMP_DIR" -mindepth 1 -maxdepth 1 -type d ! -name '.git' | shuf -n 1)
|
TEMPLATE_DIR=$(find "$TMP_DIR" -mindepth 1 -maxdepth 1 -type d ! -name '.git' | shuf -n 1)
|
||||||
|
echo "TEMPLATE_DIR выбран = $TEMPLATE_DIR"
|
||||||
|
|
||||||
|
echo "======== копируем сайт ============="
|
||||||
if [ -d $SITE_DIR ] && [ "$(ls -A $SITE_DIR 2>/dev/null)" ]; then
|
if [ -d $SITE_DIR ] && [ "$(ls -A $SITE_DIR 2>/dev/null)" ]; then
|
||||||
rm -rf $SITE_BAC_DIR
|
rm -rf $SITE_BAC_DIR
|
||||||
|
echo "удалена $SITE_BAC_DIR"
|
||||||
mv $SITE_DIR $SITE_BAC_DIR
|
mv $SITE_DIR $SITE_BAC_DIR
|
||||||
else
|
else
|
||||||
rm -rf $SITE_DIR
|
rm -rf $SITE_DIR
|
||||||
|
echo "удалена $SITE_BAC_DIR"
|
||||||
fi
|
fi
|
||||||
mkdir -p $SITE_DIR
|
mkdir -p $SITE_DIR
|
||||||
cp -R "$TEMPLATE_DIR"/. $SITE_DIR
|
cp -R "$TEMPLATE_DIR"/. $SITE_DIR
|
||||||
rm -rf $SITE_DIR/.git
|
rm -rf $SITE_DIR/.git
|
||||||
|
echo "==== ls site dir ===="
|
||||||
|
ls -alh $SITE_DIR
|
||||||
|
echo "====================="
|
||||||
# --- Шаг 2: создание докер-сети ---
|
# --- Шаг 2: создание докер-сети ---
|
||||||
# N=$(awk '/^networks:/,/^[^[:space:]]/{if($1=="name:"){print $2; exit}}' "$COMPOSE_FILE"); N=${N:-proxy}
|
# N=$(awk '/^networks:/,/^[^[:space:]]/{if($1=="name:"){print $2; exit}}' "$COMPOSE_FILE"); N=${N:-proxy}
|
||||||
# docker network inspect "$N" >/dev/null 2>&1 || docker network create --driver bridge --attachable "$N"
|
# docker network inspect "$N" >/dev/null 2>&1 || docker network create --driver bridge --attachable "$N"
|
||||||
@@ -78,11 +100,14 @@ sed \
|
|||||||
"$NGINX_TEMPLATE" > "$NGINX_CONF"
|
"$NGINX_TEMPLATE" > "$NGINX_CONF"
|
||||||
|
|
||||||
# --- Шаг 4: открытие порта только для центрального сервера ---
|
# --- Шаг 4: открытие порта только для центрального сервера ---
|
||||||
|
echo "============ открываем ufw ================="
|
||||||
read -rp "IP или домен центрального сервера: " CENTRAL_HOST
|
read -rp "IP или домен центрального сервера: " CENTRAL_HOST
|
||||||
CENTRAL_IP=$(getent ahosts "$CENTRAL_HOST" | awk '{print $1; exit}')
|
CENTRAL_IP=$(getent ahosts "$CENTRAL_HOST" | awk '{print $1; exit}')
|
||||||
if [ -n "$CENTRAL_IP" ]; then
|
if [ -n "$CENTRAL_IP" ]; then
|
||||||
sudo ufw allow from "$CENTRAL_IP" to any port "$NODE_PORT" proto tcp comment "PANEL" && ufw reload
|
sudo ufw allow from "$CENTRAL_IP" to any port "$NODE_PORT" proto tcp comment "PANEL" && ufw reload
|
||||||
fi
|
fi
|
||||||
|
echo "============================="
|
||||||
|
|
||||||
|
|
||||||
# --- Шаг 5: запуск docker compose ---
|
# --- Шаг 5: запуск docker compose ---
|
||||||
docker compose -f "$COMPOSE_FILE" up -d certwardenclient
|
docker compose -f "$COMPOSE_FILE" up -d certwardenclient
|
||||||
|
|||||||
Reference in New Issue
Block a user