From 80c489a5bda196561ba54a2285501b313c77786d Mon Sep 17 00:00:00 2001 From: user Date: Fri, 25 Jul 2025 16:23:19 +0300 Subject: [PATCH] fix sh --- README.md | 17 +++++++++++++++-- start.sh | 52 +++++++++++++++++++++++++++++++++++++++------------- 2 files changed, 54 insertions(+), 15 deletions(-) diff --git a/README.md b/README.md index aeee1be..4a43523 100644 --- a/README.md +++ b/README.md @@ -4,13 +4,19 @@ ## πŸš€ Быстрая установка -### Π Π°Π·Π²Π΅Ρ€Ρ‚Ρ‹Π²Π°Π½ΠΈΠ΅ Π½Π° Π½ΠΎΠ²ΠΎΠΌ сСрвСрС ΠΎΠ΄Π½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ: +### πŸ”₯ АвтоматичСская установка ΠΎΠ΄Π½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ (значСния ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ): ```bash curl -fsSL https://git.projscale.dev/my-dev/uploader-bot/raw/branch/main/start.sh | sudo bash ``` -### Или ΡΠΊΠ°Ρ‡Π°Ρ‚ΡŒ ΠΈ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ локально: +**Настройки ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ:** +- βœ… Bootstrap Π½ΠΎΠ΄Π° (созданиС Π½ΠΎΠ²ΠΎΠΉ сСти) +- βœ… Π’Π΅Π±-ΠΊΠ»ΠΈΠ΅Π½Ρ‚ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ +- ❌ SSL ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½ (Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ Ρ€ΡƒΡ‡Π½ΠΎΠΉ настройки) +- ❌ Telegram Π±ΠΎΡ‚Ρ‹ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹ + +### πŸ› οΈ Π˜Π½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½Π°Ρ установка (с настройкой ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ²): ```bash wget https://git.projscale.dev/my-dev/uploader-bot/raw/branch/main/start.sh @@ -18,6 +24,13 @@ chmod +x start.sh sudo ./start.sh ``` +**Π˜Π½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹ΠΉ Ρ€Π΅ΠΆΠΈΠΌ позволяСт Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ:** +- Π’ΠΈΠΏ сСти (Bootstrap ΠΈΠ»ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΊ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΉ) +- Π’ΠΈΠΏ Π½ΠΎΠ΄Ρ‹ (публичная/приватная) +- SSL сСртификат с Π΄ΠΎΠΌΠ΅Π½ΠΎΠΌ +- Telegram API ΠΊΠ»ΡŽΡ‡ΠΈ +- ΠŸΡƒΡ‚ΡŒ ΠΊ docker.sock + ## πŸ“‹ Π§Ρ‚ΠΎ устанавливаСтся Π‘ΠΊΡ€ΠΈΠΏΡ‚ `start.sh` автоматичСски: diff --git a/start.sh b/start.sh index 88897f8..47f411c 100755 --- a/start.sh +++ b/start.sh @@ -401,29 +401,43 @@ interactive_setup() { install_dependencies() { log_info "πŸ“¦ Установка систСмных зависимостСй..." + # Настройка Π½Π΅ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠ³ΠΎ Ρ€Π΅ΠΆΠΈΠΌΠ° для apt + export DEBIAN_FRONTEND=noninteractive + export NEEDRESTART_MODE=a + export NEEDRESTART_SUSPEND=1 + # ОбновлСниС ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² case $OS_ID in ubuntu|debian) - apt update && apt upgrade -y - apt install -y curl wget git unzip htop nano ufw fail2ban \ + # Настройка для автоматичСского согласия с Π΄Π΅Ρ„ΠΎΠ»Ρ‚Π½Ρ‹ΠΌΠΈ настройками + echo 'DPkg::Options {"--force-confdef";"--force-confold";}' > /etc/apt/apt.conf.d/50unattended-upgrades-local + + apt-get update -qq + apt-get upgrade -y -qq -o Dpkg::Options::="--force-confdef" -o Dpkg::Options::="--force-confold" + apt-get install -y -qq curl wget git unzip htop nano ufw fail2ban \ python3 python3-pip python3-venv build-essential \ postgresql-client jq netcat-openbsd ;; centos|rhel|fedora) if command -v dnf &> /dev/null; then - dnf update -y - dnf install -y curl wget git unzip htop nano firewalld \ + dnf update -y -q + dnf install -y -q curl wget git unzip htop nano firewalld \ python3 python3-pip python3-devel gcc gcc-c++ \ postgresql jq nc else - yum update -y - yum install -y curl wget git unzip htop nano firewalld \ + yum update -y -q + yum install -y -q curl wget git unzip htop nano firewalld \ python3 python3-pip python3-devel gcc gcc-c++ \ postgresql jq nc fi ;; esac + # ΠžΡ‡ΠΈΡΡ‚ΠΊΠ° ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… окруТСния + unset DEBIAN_FRONTEND + unset NEEDRESTART_MODE + unset NEEDRESTART_SUSPEND + log_success "БистСмныС зависимости установлСны" } @@ -911,12 +925,15 @@ build_converter_image() { cd converter-module - # ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡΠ΅ΠΌ Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ Dockerfile - if [ ! -f "Dockerfile" ]; then - log_error "Dockerfile Π½Π΅ Π½Π°ΠΉΠ΄Π΅Π½ Π² converter-module" + # ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡΠ΅ΠΌ Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ Dockerfile Π² ΠΏΠ°ΠΏΠΊΠ΅ converter + if [ ! -f "converter/Dockerfile" ]; then + log_error "Dockerfile Π½Π΅ Π½Π°ΠΉΠ΄Π΅Π½ Π² converter-module/converter/" return 1 fi + # ΠŸΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΠΌ Π² ΠΏΠ°ΠΏΠΊΡƒ converter для сборки + cd converter + # Π‘Π±ΠΎΡ€ΠΊΠ° converter ΠΎΠ±Ρ€Π°Π·Π° ΠΈΠ· ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ рСпозитория log_info "Π‘Π±ΠΎΡ€ΠΊΠ° Docker ΠΎΠ±Ρ€Π°Π·Π° для converter..." if docker build -t my-network-converter:latest . ; then @@ -937,14 +954,23 @@ setup_nginx() { # Установка nginx case $OS_ID in ubuntu|debian) - apt update - apt install -y nginx certbot python3-certbot-nginx + export DEBIAN_FRONTEND=noninteractive + export NEEDRESTART_MODE=a + export NEEDRESTART_SUSPEND=1 + + apt-get update -qq + apt-get install -y -qq -o Dpkg::Options::="--force-confdef" -o Dpkg::Options::="--force-confold" \ + nginx certbot python3-certbot-nginx + + unset DEBIAN_FRONTEND + unset NEEDRESTART_MODE + unset NEEDRESTART_SUSPEND ;; centos|rhel|fedora) if command -v dnf &> /dev/null; then - dnf install -y nginx certbot python3-certbot-nginx + dnf install -y -q nginx certbot python3-certbot-nginx else - yum install -y nginx certbot python3-certbot-nginx + yum install -y -q nginx certbot python3-certbot-nginx fi ;; esac