ваше сообщение коммита
This commit is contained in:
84
start-cloudflared.sh
Executable file
84
start-cloudflared.sh
Executable file
@@ -0,0 +1,84 @@
|
||||
#!/bin/bash
|
||||
|
||||
echo "==== Содержимое /cloudflared.env ===="
|
||||
cat /cloudflared.env || echo "Файл не найден"
|
||||
echo "===="
|
||||
|
||||
# Получаем токен из переменной окружения или из файла
|
||||
if [ -z "$TUNNEL_TOKEN" ] && [ -f /cloudflared.env ]; then
|
||||
. /cloudflared.env
|
||||
fi
|
||||
|
||||
echo "TUNNEL_TOKEN=[$TUNNEL_TOKEN]"
|
||||
|
||||
# Функция для проверки сети
|
||||
check_network() {
|
||||
echo "Проверка сетевого соединения..."
|
||||
for addr in 1.1.1.1 8.8.8.8; do
|
||||
if ping -c 1 -W 5 "$addr" > /dev/null 2>&1; then
|
||||
echo "✓ Сеть доступна ($addr)"
|
||||
return 0
|
||||
fi
|
||||
done
|
||||
echo "✗ Сетевые проблемы"
|
||||
return 1
|
||||
}
|
||||
|
||||
# Функция для проверки доступности backend
|
||||
check_backend() {
|
||||
echo "Проверка доступности backend..."
|
||||
if curl -s --connect-timeout 5 http://backend:8000 >/dev/null 2>&1; then
|
||||
echo "✓ Backend доступен"
|
||||
return 0
|
||||
else
|
||||
echo "✗ Backend недоступен"
|
||||
return 1
|
||||
fi
|
||||
}
|
||||
|
||||
# Проверяем сеть перед запуском
|
||||
echo "=== Проверка подключений ==="
|
||||
check_network
|
||||
check_backend
|
||||
|
||||
# Проверяем наличие конфигурационного файла
|
||||
echo "=== Проверка конфигурации ==="
|
||||
if [ -f "/etc/cloudflared/config.yml" ]; then
|
||||
echo "✓ Конфигурационный файл найден"
|
||||
cat /etc/cloudflared/config.yml
|
||||
else
|
||||
echo "✗ Конфигурационный файл не найден"
|
||||
fi
|
||||
|
||||
if [ -f "/etc/cloudflared/a765a217-5312-48f8-9bb7-5a7ef56602b8.json" ]; then
|
||||
echo "✓ Credentials файл найден"
|
||||
else
|
||||
echo "✗ Credentials файл не найден"
|
||||
fi
|
||||
|
||||
# Проверим доступность frontend
|
||||
echo "=== Проверка frontend ==="
|
||||
if curl -s --connect-timeout 5 http://dapp-frontend:5173 >/dev/null 2>&1; then
|
||||
echo "✓ Frontend доступен"
|
||||
else
|
||||
echo "✗ Frontend недоступен, fallback на backend"
|
||||
fi
|
||||
|
||||
# Запускаем cloudflared с токеном вместо конфигурационного файла
|
||||
echo "=== Запуск cloudflared с токеном ==="
|
||||
echo "Используем токен туннеля: ${TUNNEL_TOKEN:0:20}..."
|
||||
exec cloudflared tunnel \
|
||||
--no-autoupdate \
|
||||
--edge-ip-version 4 \
|
||||
--protocol http2 \
|
||||
--retries 20 \
|
||||
--grace-period 60s \
|
||||
--loglevel info \
|
||||
--metrics 0.0.0.0:39693 \
|
||||
--proxy-connect-timeout 90s \
|
||||
--proxy-tls-timeout 90s \
|
||||
--proxy-tcp-keepalive 15s \
|
||||
--proxy-keepalive-timeout 120s \
|
||||
--proxy-keepalive-connections 10 \
|
||||
--proxy-no-happy-eyeballs \
|
||||
run --token "$TUNNEL_TOKEN"
|
||||
Reference in New Issue
Block a user