מדריך התקנת Medusa.js: מדריך מלא למסחר ללא ראש (Headless Commerce)
הקמה ידנית של מערכת מסחר ללא ראש לרוב לוקחת יום שלם, ושגיאות תצורת Redis עדיין מופיעות. Medusa.js פותר את זה: פקודת CLI אחת פורסת backend, אדמין וחנות. נראה כיצד להתקין ולהגדיר את Medusa 2.x בצורה נכונה, תוך התחשבות בדרישות production.
מה זה Medusa.js ולמה אתם צריכים אותו?
Medusa.js היא פלטפורמת מסחר ללא ראש בקוד פתוח על Node.js, חלופה ל-Shopify ו-Magento. בניגוד לפתרונות מונוליטיים, Medusa נותנת שליטה מלאה על ה-API וה-backend. אתם לא קשורים לתבניות—השתמשו בכל frontend (Next.js, Nuxt, React). חברות עם צוות טכני בוחרות ב-Medusa כדי להתאים אישית את הלוגיקה העסקית ללא מגבלות פלטפורמה.
למה Medusa.js משתלמת יותר מ-Shopify לחנות ניתנת להרחבה?
Shopify מציעה התחלה מהירה, אבל ככל שהעסק גדל, נתקלים במגבלות: עמלות עסקה גבוהות, חוסר יכולת להתאים אישית את לוגיקת העגלה, ונעילת ספק (vendor lock-in). Medusa מציעה גמישות: אתם שולטים בקוד, לא משלמים עמלות, ויכולים לשלב כל מערכת תשלום (Stripe, PayPal, YooKassa). לפי בדיקות, Medusa על שרתים משלכם עולה פי 2-3 פחות בעומסים של 10,000 הזמנות בחודש. חיסכון בעמלות יכול להגיע ל-$2,500 בחודש עם מחזור של $100,000.
| קריטריון | Shopify | Medusa.js |
|---|---|---|
| עמלת עסקה | 2.9% + 30¢ (או פחות) | 0% |
| התאמה אישית של backend | מוגבלת | מלאה (Node.js) |
| נעילת ספק | כן (קשה להעביר) | לא (קוד פתוח) |
| אירוח | Shopify בלבד | כל מקום (VPS, ענן) |
| ביצועים (LCP) | ממוצע | גבוה (SSR, cache) |
איך להתקין את Medusa.js ב-5 דקות?
Medusa 2.x דורשת Node.js 20+, PostgreSQL 15+ ו-Redis 7+. ה-CLI הרשמי create-medusa-app פורס backend ואופציונלית Next.js Storefront ו-Admin Dashboard בפקודה אחת. לפי התיעוד הרשמי של Medusa, התקנה דרך CLI אורכת פחות מ-5 דקות.
התחלה מהירה
# Установка через официальный CLI npx create-medusa-app@latest mystore ההתקנה האינטראקטיבית שואלת על שם הפרויקט, האם צריך Next.js Storefront, האם צריך Admin Dashboard, ומחרוזת החיבור ל-PostgreSQL. אם אתם חדשים ב-Medusa, בחרו הכל כדי לקבל סביבת ניסיון מוכנה.
התקנה ותצורה ידנית
mkdir mystore && cd mystore npm init -y npm install @medusajs/medusa @medusajs/framework # Инициализация структуры npx medusa new . --skip-db # Переменные окружения cat > .env << 'EOF' DATABASE_URL=postgresql://medusa:password@localhost:5432/medusa_db REDIS_URL=redis://localhost:6379 JWT_SECRET=$(openssl rand -base64 32) COOKIE_SECRET=$(openssl rand -base64 32) STORE_CORS=http://localhost:8000 ADMIN_CORS=http://localhost:9000 AUTH_CORS=http://localhost:9000,http://localhost:8000 EOF # Применение миграций и seed начальных данных npx medusa db:create npx medusa db:migrate npx medusa user -e [email protected] -p AdminPass123 --invite # Запуск dev-сервера npx medusa dev הגדרת Admin Dashboard
# Admin — отдельный Vite-проект npm create @medusajs/admin-vite-plugin@latest medusa-admin cd medusa-admin npm install npm run dev # http://localhost:9000 איך להגדיר את Medusa לעומס גבוה ללא אובדן ביצועים?
פעם הגדרנו את Medusa לחנות מקוונת עם 50,000 מוצרים ו-20,000 הזמנות בחודש. התחלנו עם הגדרה בסיסית אך נתקלנו בבעיות ביצועים עקב שאילתות N+1 בטעינת קטגוריות. אופטימיזציה דרך מטמון Redis והגדרת עיבוד אסינכרוני של תורים לעדכוני מוצרים הפחיתה את ה-TTFB מ-2 שניות ל-300 אלפיות השנייה. שלבים מרכזיים כוללים הגדרת מאגר חיבורים ל-PostgreSQL (לדוגמה, 20 חיבורים), הפעלת מטמון שאילתות דרך Redis, ושימוש בעיבוד אצווה לפעולות בכמות גדולה.
שגיאות נפוצות ופתרונות
- שגיאת חיבור Redis: בדקו ש-Redis פועל והפורט נכון. Medusa לא עובדת ללא Redis.
- חוסר התאמה ב-Hydration ב-Storefront: אם משתמשים ב-Next.js, ודאו שעיבוד צד שרת וצד לקוח עקביים.
- שגיאות CORS: בקובץ .env ציינו נכון את STORE_CORS, ADMIN_CORS, AUTH_CORS—אחרת ה-frontend לא יוכל לגשת ל-API.
| משתנה | תיאור |
|---|---|
| DATABASE_URL | מחרוזת חיבור ל-PostgreSQL |
| REDIS_URL | מחרוזת חיבור ל-Redis |
| JWT_SECRET | סוד לחתימת JWT |
| COOKIE_SECRET | סוד לחתימת עוגיות |
| STORE_CORS | מקורות מורשים לחנות |
| ADMIN_CORS | מקורות מורשים לאדמין |
| AUTH_CORS | מקורות מורשים לאימות |
מה כלול בעבודת ההתקנה?
אנחנו לא רק מתקינים חבילות—אנחנו מכינים פתרון production:
- פריסת backend על שרת ייעודי או בקונטיינרים של Docker.
- אינטגרציה עם מסד הנתונים שלכם (migrations, seed, גיבויים).
- הגדרת Redis למטמון ותורים.
- פריסת פאנל אדמין וחנות (Next.js, Nuxt).
- הגדרת CORS, SSL, CI/CD.
- מסירת תיעוד מלא וגישה.
- הדרכת צוות לשימוש בפאנל האדמין.
תהליך העבודה
- אנליזה — דיון בדרישות, עומס, בחירת מחסנית (Next.js לעומת Nuxt, מסד נתונים).
- עיצוב — ארכיטקטורה: backend, מיקרוסרביסים, Redis.
- יישום — התקנה, תצורה, התאמה אישית של מודולים.
- בדיקות — בדיקות עומס, בדיקת Core Web Vitals.
- פריסה — פריסה ל-production, הגדרת ניטור.
- תמיכה — אחריות ל-30 יום לגילוי שגיאות נסתרות, SLA של 4 שעות.
לוחות זמנים ואחריות
התקנה בסיסית + הגדרת סביבה + ריצה ראשונה: 2 עד 4 שעות. פריסת production מלאה עם Docker, SSL ו-CI/CD: עד יום אחד. לוחות הזמנים תלויים במורכבות ההתאמה האישית. הניסיון שלנו: מעל 30 פרויקטים ב-Node.js, אנו מספקים אחריות ל-30 יום על פעילות רציפה לאחר הפריסה. כל פרויקט עובר בדיקת אבטחה ובדיקות עומס.
אם אתם צריכים פריסת production של Medusa.js, צרו קשר להערכת פרויקט. קבלו ייעוץ עכשיו.







