Enhance Docker setup with ExaBGP CLI support and troubleshooting steps. Added named pipes for CLI communication, updated configuration file, and included validation checks for prefixes.txt file creation.
Build and Push Docker Image / build (push) Successful in 3m10s
Build and Push Docker Image / build (push) Successful in 3m10s
This commit is contained in:
@@ -22,6 +22,9 @@ mkdir data
|
|||||||
203.0.113.0/24
|
203.0.113.0/24
|
||||||
198.51.100.0/24
|
198.51.100.0/24
|
||||||
"@ | Out-File -FilePath "data/prefixes.txt" -Encoding UTF8
|
"@ | Out-File -FilePath "data/prefixes.txt" -Encoding UTF8
|
||||||
|
|
||||||
|
# Проверка создания файла
|
||||||
|
Get-Content data/prefixes.txt
|
||||||
```
|
```
|
||||||
|
|
||||||
### 2. Запуск контейнера из registry
|
### 2. Запуск контейнера из registry
|
||||||
@@ -244,6 +247,35 @@ docker exec bgp-server cat /app/logs/prefixes.log
|
|||||||
docker exec bgp-server ps aux | findstr load_prefixes
|
docker exec bgp-server ps aux | findstr load_prefixes
|
||||||
```
|
```
|
||||||
|
|
||||||
|
### Проблема: Ошибки ExaBGP конфигурации
|
||||||
|
|
||||||
|
```powershell
|
||||||
|
# Проверьте конфигурацию ExaBGP
|
||||||
|
docker exec bgp-server cat /app/exabgp.conf
|
||||||
|
|
||||||
|
# Валидация конфигурации
|
||||||
|
docker exec bgp-server exabgp --validate /app/exabgp.conf
|
||||||
|
|
||||||
|
# Проверьте named pipes
|
||||||
|
docker exec bgp-server ls -la /app/run/
|
||||||
|
|
||||||
|
# Проверьте логи ExaBGP
|
||||||
|
docker exec bgp-server cat /app/logs/exabgp.log
|
||||||
|
```
|
||||||
|
|
||||||
|
### Проблема: Файл prefixes.txt не найден
|
||||||
|
|
||||||
|
```powershell
|
||||||
|
# Проверьте монтирование volume
|
||||||
|
docker exec bgp-server ls -la /app/data/
|
||||||
|
|
||||||
|
# Создайте файл вручную
|
||||||
|
docker exec bgp-server bash -c "echo '192.168.1.0/24' > /app/data/prefixes.txt"
|
||||||
|
|
||||||
|
# Перезапустите контейнер
|
||||||
|
docker restart bgp-server
|
||||||
|
```
|
||||||
|
|
||||||
## Примеры использования
|
## Примеры использования
|
||||||
|
|
||||||
### Пример 1: Простой запуск
|
### Пример 1: Простой запуск
|
||||||
|
|||||||
+7
-2
@@ -4,6 +4,12 @@ process load-prefixes {
|
|||||||
encoder json;
|
encoder json;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# Настройки CLI
|
||||||
|
cli {
|
||||||
|
in /app/run/exabgp.in;
|
||||||
|
out /app/run/exabgp.out;
|
||||||
|
}
|
||||||
|
|
||||||
# Настройки BGP
|
# Настройки BGP
|
||||||
neighbor 192.168.1.1 {
|
neighbor 192.168.1.1 {
|
||||||
router-id 192.168.1.100;
|
router-id 192.168.1.100;
|
||||||
@@ -16,9 +22,8 @@ neighbor 192.168.1.1 {
|
|||||||
graceful-restart;
|
graceful-restart;
|
||||||
}
|
}
|
||||||
|
|
||||||
# Настройки сессии
|
# Настройки сессии (hold-time автоматически рассчитывает keepalive)
|
||||||
hold-time 90;
|
hold-time 90;
|
||||||
keepalive 30;
|
|
||||||
|
|
||||||
# Логирование
|
# Логирование
|
||||||
api {
|
api {
|
||||||
|
|||||||
@@ -8,6 +8,14 @@ echo "Starting BGP Server..."
|
|||||||
|
|
||||||
# Создание директорий если не существуют
|
# Создание директорий если не существуют
|
||||||
mkdir -p /app/logs
|
mkdir -p /app/logs
|
||||||
|
mkdir -p /app/run
|
||||||
|
|
||||||
|
# Создание named pipes для CLI
|
||||||
|
if [ ! -p "/app/run/exabgp.in" ] || [ ! -p "/app/run/exabgp.out" ]; then
|
||||||
|
echo "Creating named pipes for ExaBGP CLI..."
|
||||||
|
mkfifo /app/run/exabgp.in /app/run/exabgp.out
|
||||||
|
chmod 600 /app/run/exabgp.in /app/run/exabgp.out
|
||||||
|
fi
|
||||||
|
|
||||||
# Проверка наличия файлов с префиксами
|
# Проверка наличия файлов с префиксами
|
||||||
if [ ! -f "/app/data/prefixes.txt" ]; then
|
if [ ! -f "/app/data/prefixes.txt" ]; then
|
||||||
|
|||||||
Reference in New Issue
Block a user