diff --git a/Dockerfile b/Dockerfile index 00be3da..ef14c3e 100644 --- a/Dockerfile +++ b/Dockerfile @@ -5,6 +5,7 @@ RUN apt-get update && apt-get install -y \ iproute2 \ iputils-ping \ net-tools \ + procps \ && rm -rf /var/lib/apt/lists/* # Установка ExaBGP diff --git a/scripts/start.sh b/scripts/start.sh index 43f4c1e..83300ed 100644 --- a/scripts/start.sh +++ b/scripts/start.sh @@ -79,8 +79,8 @@ fi echo "Starting ExaBGP..." LOG_LEVEL=${BGP_LOG_LEVEL:-INFO} -# Запуск с подробным логированием в режиме демона -exabgp --log.level $LOG_LEVEL --daemon /app/exabgp.conf > /app/logs/exabgp.log 2>&1 & +# Запуск с подробным логированием +exabgp --log.level $LOG_LEVEL /app/exabgp.conf > /app/logs/exabgp.log 2>&1 & EXABGP_PID=$! # Сохранение PID @@ -94,6 +94,19 @@ if kill -0 $EXABGP_PID 2>/dev/null; then echo "ExaBGP started successfully with PID: $EXABGP_PID" echo "Recent logs:" tail -10 /app/logs/exabgp.log + + # Дополнительная проверка через несколько секунд + sleep 3 + if kill -0 $EXABGP_PID 2>/dev/null; then + echo "ExaBGP is still running after 3 seconds" + echo "Process details:" + ps aux | grep exabgp | grep -v grep || echo "Process not found in ps output" + else + echo "ExaBGP process died after startup" + echo "Full logs:" + cat /app/logs/exabgp.log + exit 1 + fi else echo "Failed to start ExaBGP" echo "Full logs:" @@ -122,4 +135,9 @@ echo "Process status:" ps aux | grep exabgp || echo "No exabgp process found" echo "---" +# Проверка процесса загрузки префиксов +echo "Checking prefix loader process:" +ps aux | grep load_prefixes || echo "No prefix loader process found" +echo "---" + wait $EXABGP_PID \ No newline at end of file