fix: photo URLs use ADMIN_URL prefix for Telegram API + resilience improvements
- productHandler, purchaseHandler, viewHandler: prefix relative photo_url with ADMIN_URL so Telegram can fetch images via public URL - bot.js: 5 retries with 5s delay on init, graceful fallback to null - errorHandler.js: 5 retries on 404 (invalid token), stops polling but keeps process alive for admin panel - config.js: BOT_TOKEN missing logs warning instead of process.exit - index.js: bot handlers only registered when bot is available, admin panel always starts regardless of bot status - adminWalletsHandler.js: replace throw with logger.warn for missing commission wallets (prevents container crash on startup) - docker-compose.yml: bind admin port to all interfaces (0.0.0.0) - README.md: updated with Tor proxy architecture, resilience docs - install.sh: added Tor proxy status check and onion address display
This commit is contained in:
39
install.sh
39
install.sh
@@ -256,6 +256,45 @@ else
|
||||
printf " %s logs -f\n" "$COMPOSE_CMD"
|
||||
fi
|
||||
|
||||
# ============================================================
|
||||
# 9. Tor Proxy — onion-адреса
|
||||
# ============================================================
|
||||
printf "\n"
|
||||
print_step "Проверка Tor-прокси"
|
||||
|
||||
TOR_RUNNING=0
|
||||
for ATTEMPT in 1 2 3 4 5 6; do
|
||||
sleep 5
|
||||
if docker exec tor-proxy test -s /var/lib/tor/ssh/hostname 2>/dev/null && \
|
||||
docker exec tor-proxy test -s /var/lib/tor/admin/hostname 2>/dev/null; then
|
||||
TOR_RUNNING=1
|
||||
break
|
||||
fi
|
||||
print_info "Попытка $ATTEMPT/6 — Tor генерирует onion-адреса..."
|
||||
done
|
||||
|
||||
if [ "$TOR_RUNNING" -eq 1 ]; then
|
||||
SSH_ONION=$(docker exec tor-proxy cat /var/lib/tor/ssh/hostname 2>/dev/null || echo "")
|
||||
ADMIN_ONION=$(docker exec tor-proxy cat /var/lib/tor/admin/hostname 2>/dev/null || echo "")
|
||||
if [ -n "$SSH_ONION" ] && [ -n "$ADMIN_ONION" ]; then
|
||||
print_ok "Tor-прокси работает!"
|
||||
printf "\n ${CYAN}${BOLD}SSH onion:${NC} %s\n" "$SSH_ONION"
|
||||
printf " ${CYAN}${BOLD}Admin onion:${NC} %s\n" "$ADMIN_ONION"
|
||||
printf "\n ${BOLD}Подключение:${NC}\n"
|
||||
printf " SSH: torify ssh root@%s\n" "$SSH_ONION"
|
||||
printf " Admin: откройте http://%s в Tor Browser\n" "$ADMIN_ONION"
|
||||
|
||||
if [ -f "./tor-proxy/get-onions.sh" ]; then
|
||||
sh ./tor-proxy/get-onions.sh 2>/dev/null || true
|
||||
fi
|
||||
else
|
||||
print_warn "Tor запущен, но onion-адреса не найдены"
|
||||
fi
|
||||
else
|
||||
print_warn "Tor-прокси не стартовал за 30 секунд. Проверьте логи:"
|
||||
printf " docker logs tor-proxy\n"
|
||||
fi
|
||||
|
||||
# ============================================================
|
||||
# Готово
|
||||
# ============================================================
|
||||
|
||||
Reference in New Issue
Block a user