Руководство по развертыванию Docker-контейнеров Nemesida WAF, Nemesida WAF API и Личного кабинета Nemesida WAF.

Если ранее использовался образ, загруженный не из Docker-репозитория, рекомендуется его удалить.

Удаление образа, загруженного не из Docker-репозитория
1. Если контейнер запущен, остановите его, используя команду:

# docker stop /ID контейнера/

Посмотреть ID контейнера можно, используя команду (cтолбец CONTAINER ID):

# docker ps -a

2. При остановленном контейнере удалите образ:

Nemesida WAFNemesida WAF FreeNemesida WAF
# docker image rm nwaf-dyn/1.18
# docker image rm nwaf-dyn-free/1.18
# docker image rm nwaf-api-cabinet

Развертывание Docker-контейнера Nemesida WAF

Для развертывания контейнера Nemesida WAF необходимо выполнить следующие действия:

Nemesida WAFNemesida WAF Free

1. Загрузите образ, содержащий динамический модуль Nemesida WAF и Nemesida AI:

# docker pull nemesida/nwaf-dyn-1.18

2. Создайте каталог для конфигурационных файлов Nemesida WAF:

# mkdir /opt/nwaf/waf-config

3. В каталоге конфигурационных файлов создайте файл first-launch:

# touch /opt/nwaf/waf-config/first-launch

4. Запустите контейнер с образом Nemesida WAF, используя команду:

# iptables -t filter -N DOCKER
# docker run --rm -d -v /opt/nwaf/waf-config:/nginx.configs -p 80:80 nemesida/nwaf-dyn-1.18

Контейнер самостоятельно завершит работу, создав в каталоге конфигурационных файлов базовый набор файлов конфигурации.

5. Отредактируйте конфигурационные файлы согласно инструкции на странице Nemesida WAF и Nemesida AI.

6. Запустите контейнер с образом Nemesida WAF, используя команду:

# iptables -t filter -N DOCKER
# docker run --rm -d -v /opt/nwaf/waf-config:/nginx.configs -p 80:80 nemesida/nwaf-dyn-1.18

где:

  • --rm — удаление контейнера после завершения работы;
  • -d — запуск контейнера в фоновом режиме;
  • -v /opt/nwaf/waf-config:/nginx.configs — монтирование каталога с конфигурационными файлами внутрь контейнера.

1. Загрузите образ, содержащий динамический модуль Nemesida WAF:

# docker pull nemesida/nwaf-dyn-free-1.18

2. Создайте каталог для конфигурационных файлов Nemesida WAF:

# mkdir /opt/nwaf/waf-config

3. В каталоге конфигурационных файлов создайте файл first-launch:

# touch /opt/nwaf/waf-config/first-launch

4. Запустите контейнер с образом Nemesida WAF, используя команду:

# iptables -t filter -N DOCKER
# docker run --rm -d -v /opt/nwaf/waf-config:/nginx.configs -p 80:80 nemesida/nwaf-dyn-free-1.18

Контейнер самостоятельно завершит работу, создав в каталоге конфигурационных файлов базовый набор файлов конфигурации.

5. Отредактируйте конфигурационные файлы согласно инструкции на странице Nemesida WAF.

6. Запустите контейнер с образом Nemesida WAF, используя команду:

# iptables -t filter -N DOCKER
# docker run --rm -d -v /opt/nwaf/waf-config:/nginx.configs -p 80:80 nemesida/nwaf-dyn-free-1.18

где:

  • --rm — удаление контейнера после завершения работы;
  • -d — запуск контейнера в фоновом режиме;
  • -v /opt/nwaf/waf-config:/nginx.configs — монтирование каталога с конфигурационными файлами внутрь контейнера.

Обновление образа Nemesida WAF
Nemesida WAFNemesida WAF Free

1. Перед обновлением образа Nemesida WAF проверьте, запущен ли контейнер. Для этого необходимо посмотреть ID контейнера (cтолбец CONTAINER ID), используя команду:

# docker ps -a

2. Если контейнер запущен, остановите его, используя команду:

# docker stop /ID контейнера/

3. При остановленном контейнере удалите образ:

# docker image rm nemesida/nwaf-dyn-1.18

4. Загрузите образ , содержащий динамический модуль Nemesida WAF и Nemesida AI:

# docker pull nemesida/nwaf-dyn-1.18

5. Запустите контейнер с образом Nemesida WAF, используя команду:

# iptables -t filter -N DOCKER
# docker run --rm -d -v /opt/nwaf/waf-config:/nginx.configs -p 80:80 nemesida/nwaf-dyn-1.18

После обновления предыдущие версии конфигурационных файлов будут размещены в подкаталоге old.

1. Перед обновлением образа Nemesida WAF проверьте, запущен ли контейнер. Для этого необходимо посмотреть ID контейнера (cтолбец CONTAINER ID), используя команду:

# docker ps -a

2. Если контейнер запущен, остановите его, используя команду:

# docker stop /ID контейнера/

3. При остановленном контейнере удалите образ:

# docker image rm nemesida/nwaf-dyn-free-1.18

4. Загрузите образ, содержащий динамический модуль Nemesida WAF:

# docker pull nemesida/nwaf-dyn-free-1.18

5. Запустите контейнер с образом Nemesida WAF, используя команду:

# iptables -t filter -N DOCKER
# docker run --rm -d -v /opt/nwaf/waf-config:/nginx.configs -p 80:80 nemesida/nwaf-dyn-free-1.18

После обновления предыдущие версии конфигурационных файлов будут размещены в подкаталоге old.

Развертывание Docker-контейнера Nemesida WAF API и Личного кабинета Nemesida WAF
Для развертывания контейнера Nemesida WAF API и Личного кабинета Nemesida WAF необходимо выполнить следующие действия:

1. Загрузите образ, содержащий модули Nemesida WAF API и Личный кабинет Nemesida WAF:

# docker pull nemesida/nwaf-api-cabinet

2. Создайте два каталога:

  • Для конфигурационных файлов (например, api-cab-config):
    # mkdir /opt/nwaf/api-cab-config
  • Для базы данных (например, api-cab-base):
    # mkdir /opt/nwaf/api-cab-base

3. В каталоге конфигурационных файлов создайте файл first-launch:

# touch /opt/nwaf/api-cab-config/first-launch

4. Запустите контейнер с образом Nemesida WAF API + Личный кабинет Nemesida WAF, используя команды:

# iptables -t filter -N DOCKER
# docker run --rm -d -v /opt/nwaf/api-cab-config:/nwaf-api -v /opt/nwaf/api-cab-base:/var/lib/postgresql -p 8080:8080 -p 8090:80 nemesida/nwaf-api-cabinet

где:

  • --rm — удаление контейнера после завершения работы;
  • -d — запуск контейнера в фоновом режиме;
  • -v /opt/nwaf/api-cab-config:/nwaf-api — монтирование каталога с конфигурационными файлами внутрь контейнера;
  • -v /opt/nwaf/api-cab-base:/var/lib/postgresql — монтирование каталога с базой данных внутрь контейнера;
  • -p 8080:8080 — проброс порта 8080 контейнера на внешний порт 8080;
  • -p 8090:80 — проброс порта 80 контейнера на внешний порт 8090.

Посмотреть ID контейнера можно, используя команду (cтолбец CONTAINER ID):

# docker ps -a

5. Разрешите доступ на чтение для всех для каталога api-cab-config:

# chmod -R 0555 /opt/nwaf/api-cab-config

6. Запустите команду миграции и создания учётной записи администратора и следуйте указаниям скрипта:

# docker exec -ti /ID контейнера/ bash -c "bash /opt/migrate.sh"

Остановить контейнер можно, используя команду:

# docker stop /ID контейнера/

7. Внесите изменения в конфигурационные файлы согласно инструкциям на страницах документации Nemesida WAF API и Личный кабинет Nemesida WAF.

8. Для запуска контейнера выполните следующие команды:

# iptables -t filter -N DOCKER
# docker run --rm -d -v /opt/nwaf/api-cab-config:/nwaf-api -v /opt/nwaf/api-cab-base:/var/lib/postgresql -p 8080:8080 -p 8090:80 nemesida/nwaf-api-cabinet

где:

  • --rm — удаление контейнера после завершения работы;
  • -d — запуск контейнера в фоновом режиме;
  • -v /opt/nwaf/api-cab-config:/nwaf-api — монтирование каталога с конфигурационными файлами внутрь контейнера;
  • -v /opt/nwaf/api-cab-base:/var/lib/postgresql — монтирование каталога с базой данных внутрь контейнера;
  • -p 8080:8080 — проброс порта 8080 контейнера на внешний порт 8080;
  • -p 8090:80 — проброс порта 80 контейнера на внешний порт 8090.

Обновление образов Nemesida WAF API и Личного кабинета Nemesida WAF
1. Перед обновлением образов Nemesida WAF API и Личного кабинета Nemesida WAF проверьте, запущен ли контейнер. Для этого необходимо посмотреть ID контейнера (cтолбец CONTAINER ID), используя команду:

# docker ps -a

2. Если контейнер запущен, остановите его, используя команду:

# docker stop /ID контейнера/

3. При остановленном контейнере удалите образ:

# docker image rm nemesida/nwaf-api-cabinet

4. Загрузите образ, содержащий модули Nemesida WAF API и Личный кабинет Nemesida WAF:

# docker pull nemesida/nwaf-api-cabinet

5. Запустите контейнер с образом Nemesida WAF API + Личный кабинет Nemesida WAF, используя команду:

# iptables -t filter -N DOCKER
# docker run --rm -d -v /opt/nwaf/api-cab-config:/nwaf-api -v /opt/nwaf/api-cab-base:/var/lib/postgresql -p 8080:8080 -p 8090:80 nemesida/nwaf-api-cabinet