Vendure คืออะไร และวิธีติดตั้งบน Cloud Server
Vendure คือแพลตฟอร์มร้านค้าแบบ Headless ที่เขียนด้วย TypeScript ทั้งระบบและเปิด API เป็น GraphQL เหมาะกับทีมพัฒนาที่ต้องการควบคุมตรรกะธุรกิจของร้านได้ทุกจุดด้วยภาษาที่ตรวจชนิดข้อมูลได้
- หมวดหมู่
- อีคอมเมิร์ซและร้านค้าออนไลน์
- ติดตั้งบนเซิร์ฟเวอร์เองได้
- ได้
- สเปกเริ่มต้นที่แนะนำ
- 2 vCPU · RAM 4 GB
- ไลเซนส์
- MIT (โอเพนซอร์ส)
- เว็บทางการ
- เปิดเว็บไซต์
- ISO/IEC 27001
- ISO 22301
- ISO 20000-1
- CSA-STAR
Data Center ในไทย มาตรฐาน TIA-942 Tier 3+ ข้อมูลอยู่ในประเทศไทย
Vendure คืออะไร
Vendure ออกแบบให้ทุกส่วนของร้านต่อยอดได้ด้วยปลั๊กอินที่เขียนเป็น TypeScript ตั้งแต่วิธีคิดราคา วิธีคิดค่าจัดส่ง ไปจนถึงขั้นตอนของคำสั่งซื้อ ทีมจึงปรับระบบให้ตรงกับกระบวนการธุรกิจจริงได้โดยไม่ต้องแก้แกนหลัก
การใช้ TypeScript ทั้งระบบทำให้ข้อผิดพลาดจำนวนมากถูกจับตั้งแต่ตอนคอมไพล์ ซึ่งสำคัญกับระบบร้านค้าที่คำนวณเงินและสต็อก เพราะความผิดพลาดตรงนี้กระทบธุรกิจโดยตรง
เช่นเดียวกับ Headless Commerce ตัวอื่น หน้าร้านต้องสร้างเอง ทีมที่ไม่มีนักพัฒนาจึงไม่ควรเลือกสถาปัตยกรรมนี้ แม้ระบบจะมีหน้าจัดการหลังบ้านมาให้พร้อมแล้วก็ตาม
ความสามารถเด่นของ Vendure
เขียนด้วย TypeScript ทั้งระบบ
ตรวจชนิดข้อมูลได้ตั้งแต่ตอนคอมไพล์ ลดข้อผิดพลาดในส่วนที่คำนวณเงินและสต็อก
ต่อยอดด้วยปลั๊กอิน
เพิ่มตรรกะธุรกิจของตัวเองได้โดยไม่ต้องแก้แกนหลัก ทำให้อัปเกรดรุ่นได้ต่อเนื่อง
API เป็น GraphQL
แยก API ของหน้าร้านกับของผู้ดูแลออกจากกันอย่างชัดเจน
หน้าจัดการหลังบ้านพร้อมใช้
ทีมงานจัดการสินค้าและคำสั่งซื้อได้ทันทีโดยไม่ต้องสร้างหน้าจอเอง
รองรับหลายช่องทางและหลายภาษา
ตั้งราคาและเนื้อหาแยกตามช่องทางหรือภาษาที่ขาย
ใช้ Vendure ทำอะไรได้บ้าง
- ทีมพัฒนา TypeScript ที่ต้องการควบคุมตรรกะของร้านทั้งหมด
- ร้านที่มีกระบวนการสั่งซื้อเฉพาะตัวซึ่งแพลตฟอร์มสำเร็จรูปทำไม่ได้
- ธุรกิจที่ต้องเชื่อมร้านค้ากับระบบภายในหลายระบบ
- โครงการที่ต้องการหน้าร้านแบบ Headless ที่ออกแบบเอง
สเปก Cloud Server ที่แนะนำ
| ระดับการใช้งาน | vCPU | RAM | Disk |
|---|---|---|---|
| เริ่มต้นร้านทดสอบหรือร้านที่เพิ่งเปิด | 2 vCPU | 4 GB | NVMe 40 GB |
| แนะนำร้านงานจริงพร้อมงานเบื้องหลัง | 4 vCPU | 8 GB | NVMe 100 GB |
| ร้านใหญ่แยกฐานข้อมูลและรันหลาย Instance หลัง Load Balancer | 8 vCPU ขึ้นไป | 16 GB ขึ้นไป | NVMe 200 GB ขึ้นไป |
ดูราคาตามสเปกได้ที่ ราคา Cloud Compute หรือให้ทีมงานช่วยประเมินสเปกจากปริมาณผู้ใช้จริงของคุณ
วิธีติดตั้ง Vendure บน Cloud Server ของ THAI DATA CLOUD
ขั้นตอนด้านล่างใช้กับ Cloud Server ที่เพิ่งสร้างใหม่จากหน้าจัดการของ THAI DATA CLOUD ได้ทันที ถ้าไม่สะดวกทำเอง ทีมวิศวกรของเราติดตั้งและตั้งค่าให้ฟรีสำหรับลูกค้า Cloud Server
สิ่งที่ต้องเตรียม
- Node.js รุ่น LTS ที่ Vendure รองรับ
- PostgreSQL หรือ MySQL
- PM2 หรือ systemd และ Nginx สำหรับ Production
- พื้นที่จัดเก็บสำหรับรูปสินค้า
ทดสอบบน Ubuntu Server 24.04 LTS
- 1
ติดตั้ง Node.js และฐานข้อมูล
curl -fsSL https://deb.nodesource.com/setup_22.x | sudo -E bash - sudo apt -y install nodejs postgresql nginx - 2
สร้างฐานข้อมูล
sudo -u postgres psql -c "CREATE DATABASE vendure;" sudo -u postgres psql -c "CREATE USER vendure WITH PASSWORD 'ChangeThisStrongPassword';" sudo -u postgres psql -c "GRANT ALL PRIVILEGES ON DATABASE vendure TO vendure;" - 3
สร้างโปรเจกต์
ตัวช่วยสร้างจะถามชนิดฐานข้อมูลและข้อมูลการเชื่อมต่อ พร้อมสร้างบัญชีผู้ดูแลระบบให้
cd /var/www npx @vendure/create store - 4
บิลด์และรันเป็นบริการ
cd /var/www/store npm ci npm run build sudo npm install -g pm2 pm2 start dist/index.js --name vendure pm2 startup systemd && pm2 save - 5
ตั้ง Nginx เป็น Reverse Proxy
server { listen 443 ssl; server_name shop.example.com; client_max_body_size 100M; location / { proxy_pass http://127.0.0.1:3000; proxy_set_header Host $host; proxy_set_header X-Forwarded-Proto $scheme; } } - 6
ตั้งค่าที่เก็บรูปสินค้า
ตั้งค่าให้เก็บไฟล์บน Object Storage แทนดิสก์ของเครื่อง เพื่อให้ขยายหรือเปลี่ยนเครื่องได้โดยไม่ต้องย้ายไฟล์
พอร์ตที่ต้องเปิดบน Firewall
| พอร์ต | โปรโตคอล | ใช้ทำอะไร |
|---|---|---|
| 443 | TCP | HTTPS ของ API และหน้าจัดการ |
| 3000 | TCP | พอร์ตภายในของแอป |
| 5432 | TCP | PostgreSQL (เปิดเฉพาะภายใน) |
สิ่งที่ควรทำต่อหลังติดตั้งเสร็จ
- เก็บคีย์ลับและข้อมูลฐานข้อมูลในไฟล์ .env ที่จำกัดสิทธิ์
- ให้แอปฟังเฉพาะภายในเครื่องและเปิดสู่ภายนอกผ่าน Nginx
- แยก API ของผู้ดูแลออกจากปลายทางสาธารณะและจำกัดไอพีถ้าทำได้
- สำรองฐานข้อมูลทุกวันเพราะเก็บคำสั่งซื้อทั้งหมด
ทำไมควรรัน Vendure บน Cloud Server ของ THAI DATA CLOUD
Data Center ในประเทศไทย มาตรฐาน ISO/IEC 27001 และ ISO 22301 พร้อมทีมวิศวกรคนไทยดูแลตลอด 24 ชั่วโมง
เป็นแอป Node.js ที่ต้องรันตลอดเวลา จึงเหมาะกับ Cloud Server มากกว่าโฮสติ้งแบบแชร์
แยกฐานข้อมูลไปอีกเครื่องในวง Private Network ในไทยได้เมื่อร้านโต
ปรับสเปกได้ตามช่วงแคมเปญโดยไม่ต้องย้ายระบบ
คำถามที่พบบ่อยเกี่ยวกับ Vendure
Vendure ต่างจาก Medusa อย่างไร
ทั้งคู่อยู่บน Node.js และเป็น Headless เหมือนกัน Vendure เน้น TypeScript และ GraphQL ตั้งแต่แกนหลัก ส่วน Medusa ยืดหยุ่นกว่าในการเลือกรูปแบบ API การเลือกจึงขึ้นกับความถนัดของทีมและปลั๊กอินที่ต้องใช้
มีหน้าร้านสำเร็จรูปให้ไหม
มีตัวอย่างหน้าร้านให้เริ่มต้น แต่คาดหวังว่าทีมจะสร้างหน้าร้านของตัวเอง ซึ่งเป็นเหตุผลหลักที่เลือกสถาปัตยกรรมแบบนี้
ใช้ฟรีเชิงพาณิชย์ได้ไหม
แกนหลักเป็นโอเพนซอร์สภายใต้ใบอนุญาต MIT จึงใช้เชิงพาณิชย์ได้ ส่วนปลั๊กอินระดับองค์กรบางตัวเป็นแบบเสียค่าบริการ ควรตรวจรายการที่จำเป็นก่อนวางงบ
ทางเลือกอื่นที่คล้ายกับ Vendure
แอปอื่นในหมวด อีคอมเมิร์ซและร้านค้าออนไลน์
บริการของ THAI DATA CLOUD ที่เกี่ยวข้อง
ให้เราติดตั้ง Vendure ให้ฟรี บน Cloud Server ในไทย
แจ้งความต้องการสั้น ๆ ทีมวิศวกรจะช่วยประเมินสเปก ติดตั้ง และตั้งค่าความปลอดภัยให้พร้อมใช้งาน ปรึกษาฟรี ไม่มีข้อผูกมัด