diff --git a/start.sh b/start.sh index 6b2134d..6819b17 100755 --- a/start.sh +++ b/start.sh @@ -709,6 +709,7 @@ ffmpeg-python==0.2.0 python-magic==0.4.27 jinja2==3.1.2 starlette==0.27.0 +structlog==23.2.0 EOF # Создание init_db.sql @@ -1265,9 +1266,17 @@ install_ssl_certificates() { # Очистка временных файлов certbot rm -rf /tmp/tmp*/log 2>/dev/null || true - # Получение сертификата через certbot + # Проверка существующих сертификатов и их очистка при конфликте + log_info "Проверка существующих сертификатов..." + if [ -d "/etc/letsencrypt/live/$DOMAIN" ]; then + log_warn "Обнаружен существующий сертификат для $DOMAIN, удаляем для предотвращения конфликтов..." + certbot delete --cert-name "$DOMAIN" --non-interactive 2>/dev/null || true + sleep 2 + fi + + # Получение сертификата через certbot с явным указанием типа ключа log_info "Запуск certbot для получения SSL сертификата..." - if certbot --nginx -d "$DOMAIN" --email "$EMAIL" --agree-tos --non-interactive --redirect; then + if certbot --nginx -d "$DOMAIN" --email "$EMAIL" --agree-tos --non-interactive --redirect --key-type rsa --cert-name "$DOMAIN"; then log_success "SSL сертификат установлен для $DOMAIN" # Настройка автообновления