ติดตั้ง NexCMP
ตัวติดตั้งคือสคริปต์เดี่ยวที่ให้บริการโดยเซิร์ฟเวอร์ไลเซนส์ของคุณ โดยจะตรวจสอบเครื่อง เปิดใช้งานไลเซนส์ ดาวน์โหลดและตรวจสอบความถูกต้องของโปรแกรม ติดตั้งบริการ และ (เลือกได้) ตั้งค่า nginx พร้อมใบรับรองจาก Let's Encrypt
ก่อนที่คุณจะเริ่มต้น
- เซิร์ฟเวอร์ที่เป็นไปตาม requirements และสิทธิ์ root
- ไลเซนส์คีย์และโดเมนหลักของคุณจาก license page — ดู License and purchase
- เรคคอร์ด DNS สำหรับโดเมน — ดู DNS and Cloudflare คุณยังสามารถติดตั้งก่อนแล้วค่อยแก้ไข DNS ทีหลังได้ โดยตัวติดตั้งจะบอกคุณว่ามีอะไรขาดหายไปและสามารถรันซ้ำอีกครั้งได้ง่ายๆ
การติดตั้ง
- เข้าสู่ระบบเซิร์ฟเวอร์และสลับเป็นสิทธิ์ root (หรือใส่
sudoนำหน้า) - รันคำสั่งจากหน้าไลเซนส์ของคุณ โดยจะมีลักษณะดังนี้:
bash
curl -fsSL https://nexcmp.com/install.sh | sudo bash -s -- \
--license NXC-XXXXX-XXXXX-XXXXX-XXXXX \
--domain cloud.example.com \
--email admin@example.com- รอเครื่องหมายถูก การติดตั้งใหม่จะใช้เวลาเพียงไม่กี่นาที การเริ่มทำงานครั้งแรกจะสร้างสีมาฐานข้อมูลและอาจใช้เวลาถึงหนึ่งนาทีบนดิสก์ที่ช้า
- อ่านสรุปที่ด้านท้าย ซึ่งจะแสดง URL พอร์ทัลและผู้ดูแลระบบ รหัสตั้งค่า และขั้นตอนถัดไป

พารามิเตอร์
| พารามิเตอร์ | ค่าเริ่มต้น | ความหมาย |
|---|---|---|
--license KEY | จำเป็นสำหรับการติดตั้งครั้งแรก | ไลเซนส์คีย์ |
--domain NAME | จำเป็นสำหรับการติดตั้งครั้งแรก | โดเมนหลัก ต้องตรงกับไลเซนส์ https:// และเส้นทางต่อท้ายจะถูกตัดออก |
--email ADDRESS | ไม่มี | อีเมลติดต่อสำหรับประกาศการหมดอายุของ Let's Encrypt หากไม่มี ใบรับรองจะถูกลงทะเบียนโดยไม่มีอีเมล |
--port N | 3000 | พอร์ตภายในของแผงควบคุม (1–65535) |
--no-nginx | ปิด | ไม่ต้องติดตั้งหรือกำหนดค่า nginx / TLS ใช้สิ่งนี้เมื่อคุณรันรีเวอร์สพร็อกซีของคุณเองหรือต้องการตรวจสอบ NexCMP ก่อน |
--behind-cloudflare | ตรวจหาอัตโนมัติ | บังคับใช้โหมด "โดเมนถูกพร็อกซีโดย Cloudflare" โดยปกติจะตรวจพบจาก DNS |
--channel NAME | stable | แชนแนลรีลีส |
การรันตัวติดตั้งอีกครั้งโดยไม่มีพารามิเตอร์จะนำค่าที่บันทึกไว้กลับมาใช้ใหม่ (/etc/nexcmp/install.conf) และอัปเกรดได้อย่างปลอดภัย โดยคงข้อมูล การกำหนดค่า และบัญชีไว้ ซึ่งนั่นคือสิ่งที่จะเกิดขึ้นเมื่อทำ sudo nexcmp update
สิ่งที่ตัวติดตั้งทำ
- ตรวจสอบเครื่อง — Ubuntu 22.04/24.04, x86_64, RAM อย่างน้อย 2 GB, พื้นที่ดิสก์ว่าง 8 GB
- ติดตั้งแพ็กเกจ ที่จำเป็น (
curl,zstd,openssl,python3,openssh-client…) - สร้างผู้ใช้สำหรับบริการ
nexcmpและไดเรกทอรี:/opt/nexcmp(โปรแกรม, เป็นของ root, เซอร์วิสอ่านได้อย่างเดียว),/etc/nexcmp(การกำหนดค่า),/var/lib/nexcmp(ข้อมูล),/var/log/nexcmp - เปิดใช้งานไลเซนส์ สำหรับโดเมน และจัดเก็บ ID อินสแตนซ์ที่กำหนดไว้สำหรับเครื่องนี้
- ดาวน์โหลดรีลีสใหม่ล่าสุดที่คุณมีสิทธิ์ได้รับ จากนั้นตรวจสอบ SHA-256 และลายเซ็น Ed25519 รีลีสที่ไม่มีลายเซ็นถูกต้องจะถูกปฏิเสธ โดยจะไม่ทำการดาวน์เกรดเวอร์ชันปัจจุบันที่ใหม่กว่า
- เขียนการตั้งค่าและยูนิต systemd (
nexcmp,nexcmp-vmd,nexcmp-update) และเริ่มบริการต่างๆ โดยจะรอให้/healthzตอบสนอง - ตั้งค่า nginx และ TLS (เว้นแต่จะระบุ
--no-nginx): รับใบรับรอง Let's Encrypt ด้วย certbot (แบบเว็บรูทชาเลนจ์) สำหรับโดเมน และสำหรับadmin.<domain>/partner.<domain>เมื่อชื่อเหล่านั้นชี้มาด้วย หาก DNS ยังไม่ชี้มาที่เซิร์ฟเวอร์นี้ (หรือ Cloudflare) ขั้นตอนนี้จะถูกข้ามและแสดงข้อความแจ้ง - แสดงสรุป พร้อม URL และรหัสติดตั้ง (setup code) หากยังไม่มีผู้ดูแลระบบ
พอร์ตของพาเนล (3000)
- ระหว่างการติดตั้งครั้งแรก พาเนลจะรันบน
0.0.0.0:3000เพื่อให้คุณสามารถเปิดตัวช่วยตั้งค่าได้ที่http://<server-IP>:3000/setup - เมื่อตัวช่วยตั้งค่าเสร็จสิ้น และ เปิดใช้งาน TLS แล้ว พาเนลจะรันบน
127.0.0.1เท่านั้น โดย nginx จะทำหน้าที่พร็อกซีhttps://<domain>ไปยังพาเนล - สำหรับกรณีฉุกเฉิน (nginx เสีย, DNS ผิด) คุณสามารถเปิดพอร์ตชั่วคราวได้:
sudo nexcmp open-port 30(30 นาที จากนั้นจะปิดเอง) — หรือใช้ SSH ทันเนล:ssh -L 3000:127.0.0.1:3000 <server>แล้วเรียกดูhttp://127.0.0.1:3000/
HTTP แบบไม่เข้ารหัส
พอร์ต 3000 เป็น HTTP แบบไม่เข้ารหัส โปรดใช้เฉพาะสำหรับการตั้งค่าบนเครือข่ายที่เชื่อถือได้ หรือผ่าน SSH ทันเนลเท่านั้น อย่าเปิดทิ้งไว้
การติดตั้งโดยไม่มีโดเมนสาธารณะ (สำหรับห้องทดลองหรือทดสอบ)
คุณสามารถติดตั้งบนเครื่องที่ยังไม่มี DNS ได้:
bash
curl -fsSL https://nexcmp.com/install.sh | sudo bash -s -- \
--license NXC-XXXXX-XXXXX-XXXXX-XXXXX --domain lab.example.com --no-nginxจากนั้นเปิดตัวช่วยตั้งค่าผ่าน SSH ทันเนล (ssh -L 3000:127.0.0.1:3000 <server>, เรียกดู http://127.0.0.1:3000/setup) รันตัวติดตั้งใหม่อีกครั้งโดยไม่ใช้ --no-nginx เมื่อมี DNS แล้ว
Docker และ Kubernetes
ไม่มีการเผยแพร่ container image โดยตัวติดตั้ง (การติดตั้ง systemd แบบเนทีฟ) เป็นวิธีการติดตั้งเดียวที่รองรับ
ตรวจสอบ
bash
sudo nexcmp statusคุณควรเห็นเวอร์ชัน, nexcmp: active, nexcmp-vmd: active, healthz: ok และรหัสติดตั้ง (จนกว่าตัวช่วยตั้งค่าจะเสร็จสิ้น) ดำเนินการต่อด้วย ตัวช่วยตั้งค่า
หากมีข้อผิดพลาดเกิดขึ้น โปรดดู ข้อผิดพลาดในการติดตั้ง