Permalink
Switch branches/tags
Nothing to show
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
93 lines (66 sloc) 7.4 KB

logo

ESET Nod32 Update Mirror

Build Size Layers Stars License Issues

Console screenshot

Docker-образ со скриптом для создания зеркала баз обновлений антивируса "Eset Nod32". Для его полноценного функционирования потребуется установленные:

Особенности :octocat:

  • Запускается в docker-контейнере, довольно экономично относится к ресурсам системы;
  • Успешно работает с различными версиями антивирусов Eset Nod32 (для определения "рабочих" директорий различных версий Eset Nod32 используется проверки User-Agent и редиректы средствами nginx);
  • Умеет автоматически искать и использовать (поддерживая их список в актуальном состоянии) бесплатные ключи обновлений (ВНИМАНИЕ! ДАННЫЙ ФУНКЦИОНАЛ ТОЛЬКО ДЛЯ ОЗНАКОМЛЕНИЯ И ТЕСТИРОВАНИЯ РАБОТЫ! ИСПОЛЬЗУЙТЕ ТОЛЬКО ЛЕГАЛЬНО КУПЛЕННЫЕ КЛЮЧИ!)
  • Возможно размещение базы обновлений как в корневой директории домена, так и в произвольной под-директории (не тестировал, но функционал заложил);
  • При указании не официальных серверов обновлений (их можно указывать до 10 шт.) и возникновении ошибки в процессе с первого указанного сервера - обновление произойдет со второго, иначе - с третьего, и так далее;
  • Реализована возможность скачивать обновления только для определенных программных продуктов, платформ, языков и версий Eset Nod32;
  • Поддерживается отладочный режим работы для быстрого выявления источников возможных проблем;
  • Пишет подробный лог;
  • Возможно указание лимитов скорости и задержек при скачивании файлов обновлений;
  • При завершении обновления пишет в отдельные файлы версию базы обновлений и дату обновления (имена файлов настраиваются);
  • Скачивает только обновленные файлы.

Установка и обновление

Ранее (до использования docker) приходилось довольно много всего ставить и настраивать, теперь же - достаточно иметь установленный docker и docker-compose. При необходимости - вы можете разобрать Dockerfile и entrypoint*-скрипты, запустив данный скрипт на вашем busybox (базовый docker-браз как раз основан на alpine).

Для запуска приложения достаточно выполнить:

$ docker run --rm tarampampam/nod32-update-mirror:latest --help

Или для запуска контейнера авто-обновления с nginx для "раздачи" фалов обновления:

$ curl https://raw.githubusercontent.com/tarampampam/nod32-update-mirror/master/docker-compose.live.yml --output ./docker-compose.yml
$ docker-compose up -d

После чего можно окрыть в браузере 127.0.0.1:8080 и увидеть веб-интерфейс приложения. В "фоновом" режиме (в отдельном контейнере) уже началось скачивание файлов обновления для зеркала.

Перед запуском рекомендую ознакомиться с доступными параметрами кофигурации (базовые параметры описаны в самом файле docker-compose.yml, за деталями - поиск по исходникам).

Для остановки контейнеров достаточно в директории с файлом docker-compose.yml выполнить:

$ docker-compose down -v

Флаг -v необходим для удаления всех volume, что были созданы внутри контейнеров. Если вы хотите оставить все скаченные файли и логи - не используйте флаг -v.

Так же следует уделить особое внимание переменным окружения контейнера nginx - NGINX_SERVER_SCHEME и NGINX_SERVER_NAME - их необходимо установить исходя из настроек домена, "на котором крутится" зеркало обновлений для корректных редиректов - это важно.

История изменений

Доступна по этой ссылке.

Ссылки

License

MIT. Use anywhere for your pleasure.