Миграция Docker-контейнеров с компонентами Nemesida WAF API и Личный кабинет | Немезида ВАФ

В связи с прекращением поддержки docker-контейнеров nwaf-web/nwaf-web-pg необходимо произвести миграцию компонентов на новые контейнеры Nemesida WAF API и Личный кабинет.

Для этого необходимо выполнить следующие действия:

1. Разверните СУБД PostgreSQL на отдельном сервере и создайте БД waf и cabinet, а также пользователей для подключения к ним (необходимо, если ранее использовался контейнер nwaf-web):

Для БД waf:

# su - postgres -c "psql -c \"CREATE DATABASE waf;\""
# su - postgres -c "psql -c \"CREATE ROLE nw_api PASSWORD 'YOUR_PASSWORD';\""
# su - postgres -c "psql -c \"GRANT ALL ON DATABASE waf TO nw_api;\""
# su - postgres -c "psql -c \"ALTER ROLE nw_api WITH LOGIN;\""
# su - postgres -c "psql waf -c \"GRANT ALL ON ALL TABLES IN SCHEMA public TO nw_api;\""
# su - postgres -c "psql waf -c \"GRANT ALL ON ALL SEQUENCES IN SCHEMA public TO nw_api;\""
# su - postgres -c "psql waf -c \"GRANT CREATE ON SCHEMA public TO nw_api;\""

Для БД cabinet:

# su - postgres -c "psql -c \"CREATE DATABASE cabinet;\""
# su - postgres -c "psql -c \"CREATE ROLE nw_cabinet PASSWORD 'YOUR_PASSWORD';\""
# su - postgres -c "psql -c \"GRANT ALL ON DATABASE cabinet TO nw_cabinet;\""
# su - postgres -c "psql -c \"ALTER ROLE nw_cabinet WITH LOGIN;\""
# su - postgres -c "psql cabinet -c \"GRANT ALL ON ALL TABLES IN SCHEMA public TO nw_cabinet;\""
# su - postgres -c "psql cabinet -c \"GRANT ALL ON ALL SEQUENCES IN SCHEMA public TO nw_cabinet;\""
# su - postgres -c "psql cabinet -c \"GRANT CREATE ON SCHEMA public TO nw_cabinet;\""

2. Создайте дамп соответствующих БД, используя команды (необходимо, если ранее использовался контейнер nwaf-web):

# pg_dump -h <HOST> -p <PORT> -U nw_api -d waf | bzip2 -9 > /tmp/waf.sql.bz2
# pg_dump -h <HOST> -p <PORT> -U nw_cabinet -d cabinet | bzip2 -9 > /tmp/cabinet.sql.bz2

3. Остановите контейнер nwaf-web/nwaf-web-pg:

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

Посмотреть ID контейнера (cтолбец CONTAINER ID) можно командой:

# docker ps -a

4. Разархивируйте и экспортируйте ранее созданные дампы БД в новой СУБД PostgreSQL (необходимо, если ранее использовался контейнер nwaf-web):

# su postgres
$ cat /tmp/waf.sql.bz2 | bunzip2 | psql waf
$ cat /tmp/cabinet.sql.bz2 | bunzip2 | psql cabinet

5. Разверните контейнеры Nemesida WAF API и Личный кабинет и произведите их настройку;

6. Внесите (если необходимо) изменения в конфигурационные файлы контейнеров Nemesida WAF, Nemesida AI MLC и Nemesida WAF Scanner согласно инструкции из руководства для взаимодействия компонентов с Nemesida WAF API и Личным кабинетом:

  • URL-адрес для обращения к Nemesida WAF API;
  • Реквизиты подключения к БД waf и cabinet.