FROM ubuntu:22.04 # Установка системных зависимостей и FRR RUN apt-get update && apt-get install -y \ frr \ frr-pythontools \ python3 \ python3-pip \ iproute2 \ iputils-ping \ net-tools \ procps \ vim \ curl \ && rm -rf /var/lib/apt/lists/* # Установка Python зависимостей RUN pip3 install watchdog # Создание структуры директорий RUN mkdir -p /app/scripts /app/data /app/logs /etc/frr # Копирование файлов COPY frr.conf /etc/frr/frr.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 RUN chmod +x /app/scripts/monitor.py # Рабочая директория WORKDIR /app # Открытие BGP порта EXPOSE 179 # Установка переменных окружения по умолчанию ENV BGP_LOCAL_AS=65000 ENV BGP_ROUTER_ID=192.168.100.99 ENV BGP_NEIGHBOR_IP=192.168.0.254 ENV BGP_NEIGHBOR_AS=65001 ENV BGP_HOLD_TIME=90 ENV BGP_KEEPALIVE=30 ENV BGP_LOG_LEVEL=info ENV FRR_DAEMONS="bgpd zebra" # Команда запуска ENTRYPOINT ["/app/scripts/start.sh"]