LennufTechWiki
  • Навигация
  • Анкета заказчика
  • Список контрагентов
  • Памятка запуска
  • Требования к контенту
  • Описание функционала методом пользовательских историй
  • ФЗ на платформу
  • Техническая документация
    • Техническое описание платформы
    • Документация к API внешних интеграций, для продавцов
    • Документация по развертыванию микросервисов
      • Развертывание МС Каталог
      • Развертывание МС Файлы
      • Развертывание остальных микросервисов
  • Серверная часть
  • Учебный канал
    • Инструкции по работе с модулем "Товары"
      • Создание товара
      • Создание товарной группы
      • Создание бренда
      • Создание категорий
      • Создание товарного атрибута
      • Создание характеристик товара
    • Инструкции по работе с модулем Веб-витрина (CMS)
      • Как изменить информацию в футере сайта
      • Как изменить логотип на витрине сайта
      • Как создавать новые страницы
      • Как изменить информацию в меню "Помощь"
      • Как создать акцию (для раздела "Акции")
      • Как создать баннер
      • Как создать и назначить товарный шильдик
      • Как изменить пункты меню на витрине сайта
      • Как создать лукбук
      • Как поменять тему и стиль витрины (цвета)
    • Инструкции к функционалу конструктора страниц
      • Создание страницы
      • Основной слайдер
      • Текст
      • Картинка в сетке
      • Слайдер из товаров
      • Баннер с текстом
      • Разделитель
      • Перемещение виджетов
      • Список товаров
      • Блок продуктов
      • Блок популярные бренды
      • YouTube слайдер
      • Табы
      • Быстрые категории
      • Меню
      • Сайдбар
    • Инструкции по работе с модулем "Заказы"
      • Список заказов
      • Статусы заказов
      • Причины проблем
      • Настройки чекаута
    • Инструкции по работе с модулем "Возвраты"
      • Создание причины возврата
      • Создание причины проблем
      • Функционал калькулятора возврата
      • Настройка справочника причин возврата
    • Инструкции к модулю "Коммуникации"
      • Создание автонотификации
      • Редактирование шаблона письма
    • Инструкции к модулю "Доступы"
    • Инструкции к модулю "Маркетинг"
      • Создание скидки
      • Создание бандла
      • Создание промокода
    • Инструкции по работе с модулем SEO тегов
    • Инструкции по работе с модулем редиректов
    • Инструкция по работе с модулем Блог
      • 1 Автор
      • 2 Создание статьи
      • 3 Содержание статьи
      • 4 Реакции и тэги
      • 5 Изображение внутри статьи
      • 6 Дополнительные виджеты
      • 7 Публикация статьи в страницу Блог
      • 8 Виджет Список тегов
      • 9 Виджет Карточка главной статьи
      • 10 Виджет Авторы
    • Инструкция по отображению цен с указанием суммы НДС
    • Инструкция по добавлению товарных фидов
  • FAQ
    • Как создать успешный нишевый маркетплейс
    • Ответы на часто задаваемые вопросы
      • Общие вопросы
      • Базы данных
      • Back-end
      • Front-end
      • Функциональность
      • Интеграции
      • Архитектура
      • Реферальная программа
    • Пример отчета комиссионера
    • Пример шаблона товарного ассортимента мерчанта
    • Описание SEO функционала
  • Официальные интеграторы Lennuf
  • Релизы LENNUF
    • Релизы LENNUF 2023 год
      • Релиз июль 2023
      • Релиз август 2023
      • Релиз сентябрь 2023
      • Релиз октябрь 2023
      • Релиз ноябрь 2023
      • Релиз декабрь 2023
    • Релизы LENNUF 2024 год
      • Релизы по безопасности
      • Релиз апрель 2024
      • Релиз июнь 2024
      • Релиз октябрь 2024
    • Релизы LENNUF 2025 год
      • Релиз апрель 2025
  • Требования к фото
  • Инструкция по подаче заявок в техподдержку
  • Инструкции мерчантов
    • Отправка заявки на регистрацию
    • Первичный вход в личный кабинет
    • Создание склада
    • Создание товара
    • Изменение цены товара
    • Изменение остатков товара
    • Импорт товаров
    • Импорт цен
    • Импорт остатков
    • Редактирование характеристик товара
    • Добавление скидки на товар
    • Создание товарной группы
    • Отгрузка товара логистическому оператору
    • Создание бандла
    • Создание промокода
    • Статус "Предзаказ"
Powered by GitBook
On this page
  1. Техническая документация
  2. Документация по развертыванию микросервисов

Развертывание МС Каталог

Развертывание МС «Каталог»

Требования к ПО.

  1. Ubuntu 22

  2. Nginx:latest

  3. PostgreSQL 14

  4. MariaDB:latest

  5. Elasticsearch:latest

  6. Git

Предварительные действия

Создать пользователя, от которого будет осуществляться установка.

Обновить репозитории ОС: sudo apt update && apt upgrade

Создать каталог для размещения МС, в данном примере: /opt/iBT/ibt-pim-ms/www

Установка и настройка php-fpm

Устанавливаем php8.1-fpm согласно официальной документации. Устанавливаем необходимые зависимости:

sudo apt install php8.1-cli php8.1-fpm php8.1-bcmath php8.1-bz2 php8.1-curl php8.1-dba php8.1-gd php8.1-igbinary php8.1-imagick php8.1-imap php8.1-intl php8.1-mbstring php8.1-memcache php8.1-memcached php8.1-msgpack php8.1-mysqlnd php8.1-pspell php8.1-soap php8.1-xml php7.4-xsl php8.1-zip

Назначаем следующие параметры в php.ini для cli и fpm:

max_input_vars = 10000

memory_limit = 256M

display_errors = Off

post_max_size = 1024M

upload_max_filesize = 1024M

max_file_uploads = 100

date.timezone = Europe/Moscow

Установка и настройка Nginx

Перед установкой/настройкой Nginx необходимо разместить WildCard SSL-сертификат в любой удобной папке на ваше усмотрение. Здесь и далее исходим из того, что сертификат размещен в /etc/letsencrypt/live/ibt-stage.iwengo.ru – используется бесплатный сертификат от Letsencrypt.

Устанавливаем Nginx из репозиториев apt командой: sudo apt install nginx. Создаем конфигурационный файл со следующим содержимым в /etc/nginx/sites-available:

server {

server_name pim-ms.demo.lennuf.marketru;

root "/opt/iBT/ibt-pim-ms/www/public";

index index.php;

location / {

try_files $uri $uri/ /index.php?$query_string;

}

location ~ \.php$ {

include _cors.conf;

include snippets/fastcgi-php.conf;

fastcgi_pass unix:/run/php/php7.4-fpm.sock;

}

location ~ /\.ht {

deny all;

}

location ~ /.well-known {

allow all;

}

listen 443 ssl; # managed by Certbot

ssl_certificate /etc/letsencrypt/live/ibt-stage.iwengo.ru/fullchain.pem;

ssl_certificate_key /etc/letsencrypt/live/ibt-stage.iwengo.ru/privkey.pem;

include /etc/letsencrypt/options-ssl-nginx.conf;

ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem;

client_max_body_size 1024M;

}

server {

if ($host = pim-ms.demo.lennuf.market.ru) {

return 301 https://$host$request_uri;

}

listen 80;

server_name pim-ms.demo.lennuf.market.ru;

return 404;

}

Создаем символическую ссылку на файл конфигурации в /etc/nginx/sites-enabled. Тестируем конфигурацию и перезапускаем Nginx:

nginx -t

sudo service nginx restart

Установка и настройка MariaBD

Устанавливаем MariaDB из репозиториев: sudo apt install mariadb-server. Запускаем скрипт sudo mysql_secure_installation где задаем пароль для суперпользователя.

Запускаем консоль от суперпользователя и выполняем:

CREATE USER 'ibt_mas @'localhost' IDENTIFIED BY 'password';

GRANT ALL PRIVILEGES ON *.* TO 'ibt_mas'@'localhost';

FLUSH PRIVILEGES;

где password – пароль для пользователя, под которым будет работать система.

Импортируем БД для МС «Каталог» из консоли mysql: source ibt_pim_preprod.sql

Установка и настройка Elasticsearch

Компоненты Elasticsearch отсутствуют в репозиториях пакетов Ubuntu по умолчанию. Однако их можно установить с помощью APT после добавления списка источников пакетов Elastic:

curl -fsSL https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add –

echo "deb https://artifacts.elastic.co/packages/7.x/apt stable main" | sudo tee -a /etc/apt/sources.list.d/elastic-7.x.list

sudo apt update

sudo apt install elasticsearch

Проверяем установку: curl -X GET 'http://localhost:9200'

Развертывание МС

Помещаем файл настроек окружения Laravel .env в текущую директорию. В самом файле необходимо установить правильные ссылки на остальные МС в зависимости от их адресов, а также пароль для пользователя БД, который был создан ранее.

Разрешаем запись пользователю www-data в каталог /opt/iBT/ibt-pim-ms/www/storage и все вложенные файлы и каталоги.

Создаем индексы и запускаем индексацию каталога:

php artisan elastic:index product up

php artisan elastic:index category up

php artisan elastic:index public_event up

php artisan elastic:reindex product --force

php artisan elastic:reindex category --force

php artisan elastic:reindex public_event –force

Обратите внимание, что индексация каталога может занять длительное время.

На этом установка завершена и можно проверить доступность МС по адресу https:// pim-ms.demo.lennuf.market.ru, если ошибок нет, установка произведена правильно.

Last updated 11 months ago

Устанавливаем Git: sudo apt install git. Переходим в каталог /opt/iBT/ibt-pim-ms/www и выполняем git clone . (точка в конце команды обязательна).

Устанавливаем composer 1.10.19 согласно официальной документации и выполняем в текущей директории: composer update

git@gitlab.com:iwengo/developers/ibt-pim-ms.git
https://getcomposer.org/download/