ข้ามไปยังเนื้อหา

การติดตั้ง NextPDF Connect

ติดตั้ง nextpdf/server ด้วย Composer แล้วเรียกใช้จุดเข้าใช้งานของทรานสปอร์ตหนึ่งในสามแบบ การติดตั้งแบบ core ต้องใช้เพียง PHP 8.4 และเอนจิน NextPDF เท่านั้น โดย Redis และ Premium เป็นตัวเลือกเสริม

Terminal window
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 — เซิร์ฟเวอร์ stdio แบบ Model Context Protocol (MCP)
  • vendor/bin/nextpdf-server — เซิร์ฟเวอร์ Representational State Transfer (REST) (RoadRunner HTTP worker)
  • vendor/bin/nextpdf-grpc — เซิร์ฟเวอร์ gRPC (RoadRunner gRPC worker)
  • vendor/bin/generate-skills — ส่งออกแคตาล็อกเครื่องมือเป็น agent skills

สคริปต์ที่ห้าคือ bin/nextpdf-prune ซึ่งมีอยู่ในที่เก็บโค้ดสำหรับงานบำรุงรักษา ให้เรียกใช้สคริปต์นี้โดยตรงแทนการเรียกผ่าน vendor/bin/

ไม่ต้องมี service provider, bundle หรือการลงทะเบียนกับเฟรมเวิร์ก เซิร์ฟเวอร์ทำงานเป็นโปรเซสแบบสแตนด์อโลน และไม่ใช่ไลบรารีสำหรับเสียบเข้ากับแอปพลิเคชันโฮสต์

Composer จะติดตั้ง dependency สำหรับ runtime ของแพ็กเกจด้วย โดย transitive dependency เหล่านี้รวมถึงสแต็ก Hypertext Transfer Protocol (HTTP) และ gRPC:

  • league/route และ nyholm/psr7 — การกำหนดเส้นทาง REST และข้อความ PHP Standard Recommendation (PSR)-7
  • spiral/roadrunner-http และ spiral/roadrunner-grpc — runtime ของ RoadRunner worker สำหรับทรานสปอร์ต REST และ gRPC
  • psr/http-server-middleware และ psr/http-server-handler — สัญญา middleware ตาม PSR-15 ที่ไปป์ไลน์ REST นำไปใช้
  • symfony/yaml — การแยกวิเคราะห์ไฟล์การกำหนดค่า
  • ramsey/uuid — ตัวระบุคำขอและทรัพยากร

ไม่ควรติดตั้งแพ็กเกจเหล่านี้โดยตรง Composer จะ resolve dependency เหล่านี้จาก nextpdf/server ให้เอง

เมื่อต้องการตรวจสอบการติดตั้ง ให้แสดงรายการแคตาล็อกเครื่องมือโดยไม่ต้องเริ่มเซิร์ฟเวอร์:

Terminal window
./vendor/bin/generate-skills --dry-run --list-tools

คำสั่งนี้จะเริ่ม registry เรียกใช้การตรวจหา tier แล้วพิมพ์รายการเครื่องมือที่การติดตั้ง นี้ เปิดเผย รายการดังกล่าวสะท้อนแพ็กเกจเสริมที่มีอยู่ ดู /connect/tool-catalog/

การติดตั้งสำหรับการใช้งานจริงจะตรึงเวอร์ชันของ dependency และข้ามเครื่องมือสำหรับการพัฒนา:

Terminal window
composer require nextpdf/server --no-dev
composer install --no-dev --optimize-autoloader --classmap-authoritative

สำหรับทรานสปอร์ต REST และ gRPC ให้ติดตั้งไบนารี RoadRunner ด้วย RoadRunner เป็น process supervisor ที่ดูแล worker pool แพ็กเกจ PHP จัดเตรียมเฉพาะ worker ไม่ใช่ supervisor:

Terminal window
./vendor/bin/rr get-binary
  • Redis เป็นตัวเลือกเสริม ส่วนขยาย ext-redis เป็น suggest ไม่ใช่ require หากไม่มีส่วนขยายนี้ เซิร์ฟเวอร์ REST จะใช้ที่เก็บแบบ in-memory สำหรับ rate-limit, idempotency และเอกสาร ที่เก็บแบบ in-memory เหล่านี้ใช้ได้ถูกต้องสำหรับ worker เดียว แต่ไม่ได้ใช้ร่วมกันทั่วทั้ง pool แบบหลาย worker สำหรับการดีพลอยแบบหลาย worker ให้ติดตั้ง ext-redis และตั้งค่าตัวแปรสภาพแวดล้อมของ Redis ดู /connect/configuration/

  • Premium เป็นตัวเลือกเสริม nextpdf/premium เป็น suggest เมื่อติดตั้งแพ็กเกจนี้ควบคู่กับเซิร์ฟเวอร์ โพรบตรวจหา tier ของ registry จะตรวจพบคลาส provider ของแพ็กเกจและลงทะเบียนเครื่องมือ Pro และ Enterprise เพิ่มเติม หากไม่มีแพ็กเกจนี้ จะให้บริการเฉพาะแคตาล็อก core เท่านั้น นี่เป็นการตัดสินใจด้านการแพ็กเกจที่กำหนด ณ เวลาที่รัน composer require ไม่ใช่สวิตช์ที่เปลี่ยนได้ขณะ runtime

  • เซิร์ฟเวอร์ MCP ไม่ต้องใช้ RoadRunner nextpdf-mcp เป็นโปรเซส PHP ปกติที่สื่อสารด้วย JavaScript Object Notation Remote Procedure Call (JSON-RPC) ผ่าน standard input และ output (stdio) RoadRunner จำเป็นเฉพาะสำหรับทรานสปอร์ต REST และ gRPC เท่านั้น

การ resolve dependency ของ Composer เป็นค่าใช้จ่ายด้านเวลาส่วนใหญ่ระหว่างการติดตั้ง ในอิมเมจสำหรับการใช้งานจริง ให้ใช้ --prefer-dist และ classmap แบบ authoritative เพื่อลดเวลา autoload ตอน cold-boot ค่าใช้จ่ายในการบูตของเซิร์ฟเวอร์เองมาจากการสแกน registry และการตรวจหา tier performance_budget ในหน้านี้กำหนดขอบเขตของค่าใช้จ่ายในการบูตนั้น

ติดตั้งจากแพ็กเกจ Packagist อย่างเป็นทางการ nextpdf/server เท่านั้น ตรึงเวอร์ชันใน composer.json และ commit composer.lock เพื่อให้แคตาล็อกเครื่องมือที่ดีพลอยแล้วทำซ้ำได้ ทรานสปอร์ตที่ทำงานผ่านเครือข่ายต้องใช้คีย์ application programming interface (API) ก่อน จึงจะให้บริการ endpoint ที่ไม่ใช่ health ใด ๆ ได้ ดู /connect/security-and-operations/

หน้านี้อธิบายเฉพาะกลไกการติดตั้งเท่านั้น การอ้างอิงด้านความสอดคล้องของโปรโตคอลและความปลอดภัยถูกตรึงไว้ที่ /transports/mcp/, /transports/rest/, /transports/grpc/ และ /connect/security-and-operations/

การติดตั้งแบบ core ทำงานได้ครบถ้วน และรองรับการสร้างเอกสาร การตรวจสอบ และการวินิจฉัยผ่านทรานสปอร์ตทั้งสาม การเพิ่ม nextpdf/premium จะขยายแคตาล็อกโดยไม่เปลี่ยนทรานสปอร์ตหรือโมเดลการพิสูจน์ตัวตน

  • /connect/overview/ — สิ่งที่แพ็กเกจจัดเตรียมให้
  • /connect/quickstart/ — การโต้ตอบแรกที่เรียกใช้ได้
  • /connect/configuration/ — ตัวแปรสภาพแวดล้อมและไฟล์การกำหนดค่า
  • /connect/deployment/ — RoadRunner, Docker และการดีพลอยที่รวมหลายทรานสปอร์ต
  • /connect/tool-catalog/ — เครื่องมือที่การติดตั้งนี้เปิดเผย