Перейти к содержимому

Установка NextPDF Connect

Установите nextpdf/server через Composer. Затем запустите одну из трёх транспортных точек входа. Для базовой установки нужны только PHP 8.4 и движок NextPDF. Redis и Premium необязательны.

Окно терминала
composer require nextpdf/server

Эта команда устанавливает nextpdf/core: ^3.0. Пакет объявляет php: >=8.4 <9.0, поэтому Composer не установит его на PHP 8.3 и ниже или на PHP 9.

Это Composer-пакет типа library. При установке в vendor/bin/ добавляются четыре консольные точки входа:

  • vendor/bin/nextpdf-mcp — сервер Model Context Protocol (MCP) с транспортом stdio.
  • vendor/bin/nextpdf-server — сервер Representational State Transfer (REST) (HTTP-воркер RoadRunner).
  • vendor/bin/nextpdf-grpc — сервер gRPC (gRPC-воркер RoadRunner).
  • vendor/bin/generate-skills — экспортирует каталог инструментов в виде навыков агента.

Пятый скрипт, bin/nextpdf-prune, поставляется в репозитории для служебных задач. Запускайте его напрямую, а не через vendor/bin/.

Провайдер службы, бандл или регистрация во фреймворке не нужны. Сервер работает как отдельный процесс. Это не библиотека, которую вы встраиваете в основное приложение.

Composer также устанавливает зависимости времени выполнения пакета. Среди этих транзитивных зависимостей — стек Hypertext Transfer Protocol (HTTP) и gRPC:

  • league/route и nyholm/psr7 — маршрутизация REST и сообщения PHP Standard Recommendation (PSR)-7.
  • spiral/roadrunner-http и spiral/roadrunner-grpc — среда выполнения воркеров RoadRunner для транспортов REST и gRPC.
  • psr/http-server-middleware и psr/http-server-handler — контракты промежуточного ПО PSR-15, которые реализует конвейер REST.
  • symfony/yaml — разбор файла конфигурации.
  • ramsey/uuid — идентификаторы запросов и ресурсов.

Не устанавливайте эти пакеты напрямую. Composer разрешает эти зависимости из nextpdf/server.

Чтобы проверить установку, выведите каталог инструментов, не запуская сервер:

Окно терминала
./vendor/bin/generate-skills --dry-run --list-tools

Эта команда запускает реестр, выполняет определение уровня и выводит инструменты, которые предоставляет именно эта установка. Список отражает установленные необязательные пакеты. См. /connect/tool-catalog/.

В продакшен-установке закрепляйте версию зависимости и пропускайте инструменты разработки:

Окно терминала
composer require nextpdf/server --no-dev
composer install --no-dev --optimize-autoloader --classmap-authoritative

Для транспортов REST и gRPC также установите исполняемый файл RoadRunner. RoadRunner — это супервизор процессов, который управляет пулом воркеров. PHP-пакет предоставляет воркер, а не супервизор:

Окно терминала
./vendor/bin/rr get-binary
  • Необязательный Redis. Расширение ext-redis указано как suggest, а не как require. Без него сервер REST использует хранилища в памяти для ограничения частоты запросов, идемпотентности и документов. Эти хранилища корректны для одного воркера, но не используются совместно в пуле из нескольких воркеров. Для развёртываний с несколькими воркерами установите ext-redis и задайте переменные окружения Redis. См. /connect/configuration/.

  • Необязательный Premium. nextpdf/premium указан как suggest. Когда вы устанавливаете его вместе с сервером, зонды реестра для определения уровня находят его классы-провайдеры и регистрируют дополнительные инструменты Pro и Enterprise. Без него предоставляется только базовый каталог. Это выбор состава пакетов на этапе composer require, а не переключатель времени выполнения.

  • Серверу MCP не нужен RoadRunner. nextpdf-mcp — это обычный PHP-процесс, который использует JavaScript Object Notation Remote Procedure Call (JSON-RPC) через стандартный ввод и вывод (stdio). RoadRunner требуется только для транспортов REST и gRPC.

Большая часть времени установки уходит на разрешение зависимостей Composer. В продакшен-образах используйте --prefer-dist и авторитетную карту классов, чтобы сократить время автозагрузки при холодном старте. Собственные затраты сервера при запуске — сканирование реестра и определение уровня. Значение performance_budget на этой странице ограничивает эти затраты на запуск.

Устанавливайте только из официального пакета Packagist nextpdf/server. Зафиксируйте версию в composer.json и закоммитьте composer.lock, чтобы развёрнутый каталог инструментов был воспроизводимым. Сетевые транспорты требуют ключ application programming interface (API) до обслуживания любой конечной точки, кроме проверки работоспособности; см. /connect/security-and-operations/.

Эта страница описывает только механику установки. Цитаты о соответствии протоколов и безопасности приведены на страницах /transports/mcp/, /transports/rest/, /transports/grpc/ и /connect/security-and-operations/.

Базовая установка полностью функциональна. Она обеспечивает создание документов, их проверку и диагностику через все три транспорта. Добавление nextpdf/premium расширяет каталог, не меняя модель транспорта или аутентификации.

  • /connect/overview/ — что предоставляет пакет
  • /connect/quickstart/ — первый рабочий обмен
  • /connect/configuration/ — переменные окружения и файл конфигурации
  • /connect/deployment/ — RoadRunner, Docker и развёртывание с совмещёнными транспортами
  • /connect/tool-catalog/ — какие инструменты предоставляет эта установка