From 81ca2be9347e9b99f7096140e82c30ac85466ca4 Mon Sep 17 00:00:00 2001 From: Dmitry Date: Sat, 22 Nov 2025 23:45:50 +0300 Subject: [PATCH] build fix --- tools/deploy/backend-build_app.sh | 24 ++++++++++++++++++++---- 1 file changed, 20 insertions(+), 4 deletions(-) diff --git a/tools/deploy/backend-build_app.sh b/tools/deploy/backend-build_app.sh index 157fd09..49131ed 100644 --- a/tools/deploy/backend-build_app.sh +++ b/tools/deploy/backend-build_app.sh @@ -62,10 +62,11 @@ else # Останавливаем наш сервер временно для получения сертификата sudo systemctl stop mnemo_cards_server 2>/dev/null || true - sleep 5 + sleep 3 # Пытаемся получить Let's Encrypt multi-domain сертификат echo "🔐 Получаем Let's Encrypt multi-domain сертификат..." + CERTBOT_SUCCESS=false if sudo certbot certonly --standalone \ -d mnemo-cards.online \ -d api.mnemo-cards.online \ @@ -74,6 +75,7 @@ else --cert-name mnemo-cards.online \ --non-interactive --agree-tos --email admin@mnemo-cards.online; then echo "✅ Let's Encrypt multi-domain сертификат успешно создан!" + CERTBOT_SUCCESS=true echo "🚀 Запускаем в HTTPS-only режиме" # Обновляем systemd сервис для HTTPS-only режима (используем общий сертификат) sudo sed -i 's|ExecStart=$BACKEND_DIR/server.exe.*|ExecStart=$BACKEND_DIR/server.exe --certs /etc/letsencrypt/live/mnemo-cards.online -a 0.0.0.0 -p 8081|' /etc/systemd/system/mnemo_cards_server.service @@ -88,10 +90,24 @@ else sudo sed -i 's|ExecStart=$BACKEND_DIR/server.exe.*|ExecStart=$BACKEND_DIR/server.exe -a 0.0.0.0 -p 8081|' /etc/systemd/system/mnemo_cards_server.service fi - # Возвращаем веб-сервера в исходное состояние + # ВАЖНО: Возвращаем веб-сервера СРАЗУ после получения сертификата, + # чтобы сайты были доступны во время остальной части деплоя + echo "🔄 Немедленно возвращаем веб-сервера в работу..." if [ "$NGINX_STOPPED" = true ]; then - echo "🔄 Возвращаем nginx..." - sudo systemctl start nginx + echo "🔄 Запускаем nginx..." + if sudo nginx -t 2>/dev/null; then + sudo systemctl start nginx + sleep 2 + if sudo systemctl is-active --quiet nginx; then + echo "✅ nginx успешно запущен" + else + echo "❌ Ошибка: не удалось запустить nginx!" + sudo systemctl status nginx --no-pager || true + fi + else + echo "⚠️ Ошибка в конфигурации nginx, но пытаемся запустить..." + sudo systemctl start nginx || true + fi fi if [ "$APACHE_STOPPED" = true ]; then echo "🔄 Возвращаем apache2..."