FROM python:3.9-slim # Установка системных зависимостей RUN apt-get update && apt-get install -y \ iproute2 \ iputils-ping \ net-tools \ procps \ && rm -rf /var/lib/apt/lists/* # Установка ExaBGP RUN pip install exabgp # Создание структуры директорий RUN mkdir -p /app/scripts /app/data /app/logs /run/exabgp /var/run/exabgp /usr/local/run/exabgp /usr/local/var/run/exabgp # Копирование файлов COPY exabgp.conf /app/exabgp.conf COPY scripts/ /app/scripts/ COPY data/ /app/data/ # Установка прав доступа RUN chmod +x /app/scripts/start.sh RUN chmod +x /app/scripts/load_prefixes.py RUN chmod +x /app/scripts/generate_config.py # Рабочая директория WORKDIR /app # Открытие BGP порта EXPOSE 179 # Установка переменных окружения по умолчанию ENV BGP_LOCAL_AS=65000 ENV BGP_ROUTER_ID=192.168.1.100 ENV BGP_NEIGHBOR_IP=192.168.1.1 ENV BGP_NEIGHBOR_AS=65001 ENV BGP_HOLD_TIME=90 ENV BGP_KEEPALIVE=30 ENV BGP_LOG_LEVEL=INFO # Команда запуска ENTRYPOINT ["/app/scripts/start.sh"]