Coolify ו-Claude Code: פריסת פרויקט ב-VPS משלכם
Markdownהתקנת Coolify, חיבור ל-GitHub, פריסת Next.js, הגדרת דומיין ו-HTTPS, MCP, דרישות VPS ופתרון תקלות. המחירים הטכניים בדולרים והמגבלות המקוריות.
קריאת המאמר המלא
תיעוד Ailoot — חומרי עזר לעבודה עם השירות.
מגבלות הפלטפורמה ותנאי התשלום ב-2026
הנקודה המרכזית
תוכניות חינמיות פועלות עד שחורגים לראשונה ממגבלה; לאחר מכן נדרש כרטיס בינלאומי. Heroku סגרה את התוכנית החינמית לכולם ב-2022 ועברה למצב תחזוקה בפברואר 2026. עם Coolify באירוח עצמי, השרת בבעלותכם; אין חיוב לפי מושב משתמש ואין תלות בספק.
תרחיש טיפוסי של מפתח Vibe ב-2026: אתם בונים MVP בערב אחד ב-Cursor או ב-Claude Code, מעבירים אותו למאגר GitHub, פותחים את vercel.com → מחברים את המאגר → מגיעים למסך המנוי → מזינים את הכרטיס → מקבלים Transaction declined.
זו לא תקלה ולא השבתה זמנית.
Railway, Render, Heroku — זה אותו הסיפור. Heroku למעשה סגרה את התוכנית החינמית לכולם ב-2022, ובפברואר 2026 הפרויקט עבר למצב תחזוקה — ללא תכונות חדשות וללא חוזי Enterprise חדשים. עבור משתמש עם כרטיס שאינו נתמך, המשמעות היא: „הדלת סגורה; עקפו אותה דרך מתווך שגובה עמלה של 20%”.
אפשר לשלם באמצעות כרטיסי Visa וירטואליים בקזחסטן או שירותי תשלום עסקיים. אבל פירוש הדבר הוא תוספת של 20% למחיר, עוד 30 דקות לכל עסקה והסיכון שהחשבון שלכם ייחסם כשמעבד התשלומים יזהה אי-התאמה בין המדינות.
הדוגמה המקורית כללה שלושה ניסיונות — ב-Vercel Pro, ב-Railway וב-Render.
מהו Coolify ואיך פועלת פלטפורמה באירוח עצמי?
הנקודה המרכזית
Coolify היא PaaS בקוד פתוח שאפשר לארח בעצמכם, וחלופה ישירה ל-Heroku, ל-Vercel ול-Netlify. מתקינים אותה בפקודת curl אחת על כל VPS שמריץ Ubuntu. מתחת למכסה המנוע היא משתמשת ב-Docker וב-Traefik לניתוב הפוך וב-Let's Encrypt ל-HTTPS. היא תומכת באינטגרציה עם GitHub, ב-webhooks לפריסות אוטומטיות, בגיבויים ל-S3 וביותר מ-280 שירותים להתקנה בקליק אחד (PostgreSQL, Redis, MinIO). גרסת האירוח העצמי חינמית לעד, ללא מגבלות. יש לה 55,800 כוכבים ב-GitHub ורישיון Apache-2.0.
Coolify הוא פרויקט קוד פתוח שנבנה עם Laravel ו-Docker והופך כל VPS ריק לפלטפורמה לפריסת יישומים. מתקינים את Coolify פעם אחת, ואז עושים את כל השאר דרך ממשק האינטרנט: מחברים את GitHub, בוחרים מאגר ולוחצים על Deploy.
התיעוד הרשמי מנסח זאת בקצרה ובדיוק:
Coolify היא חלופה בקוד פתוח ובאירוח עצמי ל-Heroku / Netlify / Vercel וכדומה.
מתחת למכסה המנוע, Coolify מורכבת מארבעה חלקים:
- ממשק אינטרנט שנבנה עם Laravel 12 + Livewire 3 + Tailwind v4 — לוח בקרה לניהול היישומים שלכם.
- Docker + Docker Compose — כל יישום פועל במכולה, מבודד מהאחרים.
- שרת proxy הפוך (Traefik או Caddy) — מקבל תעבורת HTTP/HTTPS נכנסת ומנתב אותה למכולות.
- אינטגרציה עם Let's Encrypt — מנפיקה ומחדשת אוטומטית אישורי SSL לכל הדומיינים.
תכונות עיקריות שהופכות את Coolify לדומה ל-Vercel מבחינת פונקציונליות:
| תכונה | Vercel | Coolify |
|---|---|---|
| פריסה אוטומטית עם push ל-git | ✅ | ✅ (באמצעות webhook של GitHub) |
| HTTPS בחינם | ✅ | ✅ (Let's Encrypt) |
| פריסות תצוגה מקדימה ל-PR | ✅ | ✅ (באמצעות GitHub App) |
| ממשק למשתני סביבה | ✅ | ✅ |
| גיבויי מסדי נתונים | ❌ (אין מסדי נתונים משלה) | ✅ (לאחסון תואם S3) |
| PostgreSQL / Redis / MongoDB | $20+ לחודש לכל אחד | ✅ התקנה בקליק אחד, בחינם |
| משימות מתוזמנות (cron) | ❌ | ✅ (תחביר cron) |
| חיוב לפי מושב משתמש | $20 למושב לחודש | אין |
| תלות בספק | גבוהה (Edge Functions, ISR) | אפסית (ה-Docker שלכם) |
| CDN גלובלי | ✅ | ❌ (רק ה-VPS שלכם) |
CDN גלובלי הוא הדבר היחיד ש-Coolify לא כוללת מהקופסה. זו התשובה הכנה. אם לפרויקט שלכם יש קהל גלובלי ואתם צריכים להפחית את זמן ההשהיה למשתמשים בארה״ב ובאירופה, הציבו את Cloudflare לפניה; הוא בחינם לתוכן סטטי.
מחיר: גרסת האירוח העצמי חינמית לעד, ללא מגבלה על מספר היישומים, השרתים או הפריסות. Coolify Cloud זמינה תמורת $5 לחודש עבור 2 שרתים ועוד $3 לכל שרת נוסף — אבל השרתים עצמם עדיין שלכם; Coolify Cloud רק מארחת את לוח הבקרה.
הגרסה האחרונה היא v4.1.0 מ-18 במאי 2026. התכונות החדשות כוללות את ערכת הבנייה Railpack בגרסת בטא, רישום ביקורת, השוואת הבדלי תצורה בין פריסות ונקודת קצה MCP מקורית (לקריאה בלבד). מקור: מהדורות GitHub.
איזה VPS כדאי לקחת עבור Coolify ב-2026?
הנקודה המרכזית
Coolify דורשת לפחות 2 vCPU, 2 GB RAM, 30 GB SSD ו-Ubuntu LTS (20.04, 22.04 או 24.04). VPS כזה יכול להריץ בנוחות 3–5 פרויקטים שנוצרו באמצעות Vibe במקביל.
דרישות המינימום של Coolify מופיעות ישירות בתיעוד הרשמי:
| פרמטר | מינימום | מומלץ |
|---|---|---|
| CPU | 2 ליבות | 2–4 ליבות |
| RAM | 2 GB | 4 GB (עם מרווח לבניות) |
| אחסון | 30 GB | 50–80 GB (לתמונות ולמסדי נתונים) |
| ארכיטקטורה | AMD64 או ARM64 (64-bit) | AMD64 |
| מערכת הפעלה | Ubuntu LTS 20.04 / 22.04 / 24.04 | 22.04 LTS |
| Root | נדרש | באמצעות מפתח SSH, לא סיסמה |
המינימום — 2 GB RAM — הוא גבול תחתון קשיח. עם 1 GB, המתקין מגיע עד Docker, נתקל ב-OOM (מחסור בזיכרון) ונתקע. אל תחסכו ב-RAM.
מקורות למחירים: Timeweb Cloud, FirstVDS, Selectel.
אם אתם צריכים יותר כוח (מסד נתונים בנפח 100 GB, כמה מופעי Postgres), בחרו ב-Aeza Dedicated.
מה לא כדאי לקחת:
- VPS משותף עם 512 MB–1 GB RAM — אין בו מספיק משאבים אפילו ל-Coolify. הוא מתאים לאתרים סטטיים על nginx, לא ל-PaaS.
רוצים לא רק להגדיר פריסה, אלא גם לבנות התקנה שתהפוך את Claude לאמינה? Coolify היא כלי ביצוע, אבל בלי הקשר מובנה (CLAUDE.md, מוח שני ו-הנדסת הקשר), Claude עדיין תזַהה בפרויקטים ארוכים. ההתקנה המלאה כוללת את שלושתם: שיבוט AI + מוח שני + הנדסת הקשר — השילוב הזה הוא שהופך את Claude מ„עוזרת שמזַהה” לכלי אמין.
איך מתקינים את Coolify ב-5 דקות
הנקודה המרכזית
ההתקנה מתבצעת בפקודת curl אחת מהתיעוד. כשהיא מתחילה, ממשק אינטרנט מופיע בפורט 8000. שם יוצרים את משתמש המנהל הראשון ורואים לוח בקרה ריק. הזמן בפועל מהתקנת Ubuntu ריקה ועד ש-Coolify פועלת הוא 5–7 דקות, מהן 3–4 דקות מוקדשות ל-apt-get install docker. הסקריפט מוריד את התלויות הנדרשות ומגדיר את Docker בעצמו; כל מה שצריך לעשות הוא להמתין לסיום.
שלב 1. התחברו ל-VPS באמצעות SSH.
אחרי יצירת VPS אצל הספק, כתובת ה-IP של השרת וסיסמת root יופיעו בהודעת דוא״ל או בלוח הבקרה. התחברו מהמחשב המקומי:
ssh root@1.2.3.4
אם הספק נתן לכם מפתח SSH במקום סיסמה, התחברו עם -i path/to/key. מכאן ואילך נניח שמותקנת אצלכם התקנה חדשה של Ubuntu 22.04 או 24.04 LTS.
שלב 2. הפעילו את פקודת ההתקנה של Coolify.
פקודה אחת מתוך התיעוד הרשמי:
curl -fsSL https://cdn.coollabs.io/coolify/install.sh | sudo bash
הסקריפט עושה שלושה דברים:
- בודק את המערכת (Ubuntu LTS? root? AMD64?)
- מתקין Docker ו-Docker Compose אם הם עדיין לא מותקנים
- מוריד את תמונות Coolify (
coolify/coolify, coolify/realtime, traefik) ומריץ אותן ברקע באמצעות docker-compose
התהליך אורך 3–5 דקות. תראו את יומני apt-get גוללים, ואחריהם docker pull. כשמופיעה ההודעה Coolify v4.1.0 is now running, עברו לשלב 3.
שלב 3. פתחו את ממשק האינטרנט.
פתחו את הכתובת הזאת בדפדפן:
http://1.2.3.4:8000
Coolify תציג אשף התקנה — טופס ליצירת המשתמש הראשון. הזינו כתובת דוא״ל וסיסמה ושמרו אותן. המשתמש הזה הופך אוטומטית למנהל; עדיין אין צורך במשתמשים נוספים.
לאחר השמירה תגיעו ללוח בקרה ריק: סרגל צד משמאל עם Resources / Projects / Servers / Sources / Notifications / Settings והנחיה במרכז: “Add your first resource.”
שלב 4. פתחו פורטים בחומת האש של הספק (לא ב-UFW).
Coolify כבר פועלת, אך מבחוץ נגיש רק פורט 8000 (לוח הבקרה). כדי לאפשר למשתמשים להגיע ליישומים שלכם, צריך לפתוח את הפורטים 80 (HTTP) ו-443 (HTTPS):
| פורט | מטרה |
|---|---|
| 22 | גישת SSH לשרת |
| 80 | מקבל תעבורת HTTP, ונדרש לאימות של Let's Encrypt |
| 443 | מקבל תעבורת HTTPS של משתמשים |
| 8000 | לוח הבקרה של Coolify (נסגור אותו לאחר הגדרת דומיין מותאם אישית ללוח הבקרה) |
מלכודת חשובה שמופיעה בתיעוד הרשמי:
Docker משתמש בכללי iptables מבוססי NAT, שיכולים לעקוף חומות אש מסורתיות של Linux כגון UFW.
כלומר, גם אם תפעילו את UFW ותסגרו את כל הפורטים, Docker עדיין יחשוף את המכולות שלו באמצעות iptables. UFW חסרת תועלת במקרה הזה. הפתרון הוא לפתוח ולסגור פורטים בלוח הבקרה של הספק, ולא דרך UFW. ב-Timeweb / Selectel / Aeza עושים זאת בחלק “Network → Firewall” במסוף האינטרנט.
שלב 5 (אופציונלי). קשרו את לוח הבקרה לדומיין שלכם.
כדי לבקר ב-https://coolify.example.com במקום ב-http://1.2.3.4:8000, צרו רשומת DNS מסוג A: coolify.example.com → 1.2.3.4, עברו ב-Coolify אל Settings → Instance Settings → Instance Domain, הזינו את תת-הדומיין ושמרו. Coolify תבקש אישור Let's Encrypt, וכעבור דקה תטען מחדש את לוח הבקרה דרך HTTPS.
אחר כך תוכלו לסגור את פורט 8000 בחומת האש — לוח הבקרה יהיה זמין דרך HTTPS בפורט התקני 443.
איך מחברים את GitHub: App או PAT?
הנקודה המרכזית
Coolify תומכת בשתי דרכים להתחבר ל-GitHub: GitHub App (מומלץ) ו-Personal Access Token (PAT). השתמשו ב-GitHub App: ההגדרה נמשכת 5 דקות באמצעות האשף, תצוגות מקדימות של PR פועלות ואפשר להגדיר הרשאות ברמת המאגר באופן מדויק. PAT היא אפשרות מיושנת למקרים חריגים; אין בה פריסות תצוגה מקדימה והיא כרוכה בסיכון של גישה גלובלית לכל המאגרים שלכם. התיעוד הרשמי אומר זאת במפורש: „עבור 95% מהמשתמשים, GitHub App היא הבחירה הנכונה”.
ב-Coolify, עברו אל Sources → + Add → GitHub App. Coolify תציג אשף בן שלושה מסכים:
- שם ותיאור — תנו למקור שם (הזינו
github-main) ואפשר להוסיף תיאור. - הגדרה ב-GitHub — כפתור שמעביר אתכם אל GitHub.com ופותח אוטומטית טופס ליצירת GitHub App עם ההרשאות הנכונות.
- אישור — לאחר החזרה מ-GitHub, לחצו על “Save.”
בשלב השני, GitHub תבקש מכם לאשר את ההרשאות ש-Coolify דורשת:
| הרשאה | רמה | מטרה |
|---|---|---|
| Contents | קריאה בלבד | שכפול המאגר |
| Pull Requests | קריאה וכתיבה | יצירת פריסות תצוגה מקדימה והוספת תגובות ל-PR |
| כתובות דוא״ל | קריאה בלבד | זיהוי commit-ים |
| Metadata | קריאה בלבד | הצגת רשימת המאגרים |
אלה הרשאות מינימליות — ל-GitHub App אין גישה למפתחות הפרטיים שלכם, אין לה אפשרות לכתוב ל-main, והיא לא יכולה לגשת למאגרים שלא חיברתם במפורש.
מתוך התיעוד הרשמי:
Personal Access Token (PAT) היא השיטה הישנה; אני ממליץ לא להשתמש בה. החסרונות:
- PAT מעניק גישה גלובלית לכל המאגרים שלכם (כולל פרטיים)
- תצוגות מקדימות של PR לא פועלות — התכונה הזאת זמינה רק ב-GitHub App
- תוקף האסימון ארוך (90 יום, שנה או ללא הגבלת זמן) — אם הוא דולף, זו בעיה
השתמשו ב-PAT רק אם אתם עובדים עם מאגר של ארגון שמדיניות האבטחה שלו אוסרת GitHub Apps ואין דרך לעקוף את האיסור.
לאחר שמירת המקור ב-Coolify, תראו את GitHub App בלוח הבקרה עם רשימת המאגרים המחוברים. כשתיצרו יישום חדש, תוכלו לבחור כל אחד מהם בלחיצה אחת.
איך לפרוס פרויקט Next.js מ-Claude Code ב-6 שלבים
הנקודה המרכזית
המסלול המלא מהגדרה ריקה של Claude Code ועד אתר פעיל: 1) מריצים claude בתיקייה ריקה, מתארים את הפרויקט ו-Claude מייצרת את הקוד; 2) מריצים git init && git remote add (Claude יכולה לעשות זאת בעצמה באמצעות פקודת slash); 3) דוחפים ל-GitHub; 4) ב-Coolify בוחרים “+ New Resource → Application” ובוחרים את המאגר; 5) מוסיפים משתני סביבה; 6) לוחצים על Deploy. Coolify תזהה שמדובר ב-Next.js, תבחר בערכת הבנייה Nixpacks, תבנה תמונת Docker בתוך 3–5 דקות ותספק דומיין זמני בתבנית YOUR_TEMPORARY_DOMAIN עם HTTPS מוכן מראש.
שלב 1. תארו ל-Claude Code את הפרויקט בתיקייה ריקה.
mkdir my-vibe-app
cd my-vibe-app
git init
claude
במהלך הפגישה:
Build a Next.js 14 app router project:
- a home page with a list of users
- /api/users endpoint returns an array from the database
- Postgres via Prisma
- Tailwind for styles
- .env.example with DATABASE_URL
- README.md with instructions for running the project
Claude תיצור את מבנה הקבצים, את package.json, את prisma/schema.prisma ואת .env.example. בקשו גם:
Create a Dockerfile for production builds and a .dockerignore.
זה אופציונלי — Coolify תבנה עם Nixpacks גם בלי Dockerfile. אבל Dockerfile נותן לכם שליטה בתהליך והוא מהיר יותר בפרויקטים גדולים.
שלב 2. צרו מאגר GitHub ודחפו אליו.
אפשר לעשות זאת ידנית דרך ממשק GitHub ו-git remote add origin ..., אבל Claude Code יכולה לעשות זאת בעצמה:
/commit-push-pr Initial Next.js app generated with Claude Code
או פשוט לומר: “Commit everything and push it to a new repository my-vibe-app under my account.” Claude תשתמש ב-CLI של gh כדי ליצור מאגר פרטי (או ציבורי) ולבצע push ראשון. מקור: הפקודה הרשמית של Claude Code.
שלב 3. צרו Application ב-Coolify.
בלוח הבקרה של Coolify, לחצו על + New → Application. ייפתח טופס:
- Source — בחרו
github-main(אפליקציית GitHub שחיברתם ב-H2 הקודם) - Repository — בחרו את
my-vibe-appמהרשימה - Branch —
main - Build Pack — Coolify תזהה אותו אוטומטית. אם קיים Dockerfile, היא תשתמש ב-
dockerfile. אחרת, היא תשתמש ב-nixpacks. אפשר לשנות זאת ידנית. - Domain — השאירו את הערך המוצע לעת עתה; הוא זמני ותחליפו אותו בדומיין שלכם בהמשך
- Port —
3000כברירת מחדל עבור Next.js
שמרו.
שלב 4. הוסיפו משתני סביבה.
ביישום שנוצר, פתחו את הכרטיסייה Environment Variables. הוסיפו את המשתנים בזה אחר זה:
DATABASE_URL=postgresql://user:pass@db-host:5432/mydb
NODE_ENV=production
ANTHROPIC_API_KEY=sk-ant-...
אם אין לכם מסד נתונים, צרו אותו ישירות ב-Coolify: + New → Database → PostgreSQL. Coolify תפעיל מכולת Postgres בתוך 30 שניות ותספק DATABASE_URL פנימי בתבנית postgresql://postgres@postgres-xyz:5432/postgres — הוסיפו אותו ליישום.
כל המשתנים מוצפנים במסד הנתונים של Coolify ואינם מוצגים ביומני הבנייה.
שלב 5. לחצו על Deploy.
בפינה הימנית העליונה נמצא כפתור Deploy כחול. יומנים בזמן אמת יופיעו בכרטיסייה Logs:
[stage: clone] Cloning '<repository-url-from-github>'
[stage: build] Detected Next.js, using Nixpacks
[stage: build] Installing Node 20, npm 10
[stage: build] npm install (245s)
[stage: build] npm run build (87s)
[stage: deploy] Creating container my-vibe-app-xyz
[stage: deploy] Container started, health check passed
[stage: proxy] Traefik routing configured
[stage: ssl] Let's Encrypt cert issued
הבנייה הראשונה נמשכת 3–5 דקות (היא מושכת את תמונת Node הבסיסית ומתקינה תלויות). בניות עוקבות נמשכות 60–90 שניות הודות לשמירת שכבות Docker במטמון.
כשהסטטוס משתנה ל-Running, העתיקו את כתובת היישום שמוצגת בשדה Domains של Coolify ופתחו בדפדפן את הכתובת המדויקת הזאת. השתמשו בערך הזה בתור <app-url-from-coolify> בהמשך; התווית בסוגריים הזוויתיים היא מציין מקום ולא כתובת אמיתית. דף הבית שלכם אמור להופיע עם HTTPS מוכן מראש. Coolify משתמשת בדומיין זמני, כדי שתוכלו לפתוח את האתר מיד בלי להגדיר DNS משלכם.
שלב 6. בדקו שהכול פועל.
פתחו את כתובת היישום מהשלב הקודם בתוספת /api/users, למשל <app-url-from-coolify>/api/users, בלי להכפיל את הלוכסן. זו נקודת הקצה ל-JSON שנוצרה בשלב 1; כתובת השורש של היישום היא דף הבית. אם יש שגיאת 500, תראו את ה-stack trace בכרטיסייה Logs. הבעיה הנפוצה ביותר בפריסה ראשונה היא ש-DATABASE_URL מצביע למסד נתונים שאינו קיים. תקנו זאת באמצעות יצירת מופע PostgreSQL ב-Coolify (ראו שלב 4 לעיל) והחלפת DATABASE_URL.
15 דקות, מרגע הזמנת ה-VPS. בדוגמה המקורית, התהליך הזה נמשך 12–18 דקות בשרת חדש.
איך מגדירים דומיין מותאם אישית ו-HTTPS
הנקודה המרכזית
חיבור דומיין מותאם אישית נעשה ב-3 שלבים: יוצרים רשומת DNS מסוג A שמצביעה לכתובת ה-IP של השרת, מזינים את הדומיין בתצורה של Coolify במקום שירות ה-DNS הזמני, מפעילים HTTPS אוטומטי ולוחצים על Redeploy. Let's Encrypt תנפיק אישור SSL באופן אוטומטי 2–3 דקות לאחר הפצת DNS (בדרך כלל 5–30 דקות). הדרישה העיקרית היא ש-DNS כבר ייפתר בזמן הלחיצה על Redeploy; אחרת, אימות Let's Encrypt ייכשל ותצטרכו להמתין 12 דקות עד לניסיון הבא.
שלב 1. צרו רשומת DNS מסוג A בלוח הבקרה של רשם הדומיין.
בדוגמאות המקוריות נעשה שימוש בדומיינים שמאוחסנים ב-Reg.ru, Beget או Timeweb. התהליך זהה:
| סוג רשומה | שם | ערך |
|---|---|---|
| A | app (או @ עבור הדומיין הראשי) | 1.2.3.4 (כתובת ה-IP של השרת) |
שמרו, פתחו מסוף ובדקו:
dig app.example.com +short
# אמור להחזיר 1.2.3.4
אם לא מתקבלת תוצאה או שמופיעה כתובת IP אחרת, DNS עדיין לא הופץ. המתינו 5–30 דקות.
שלב 2. הזינו את הדומיין ב-Coolify.
ביישום, פתחו את הכרטיסייה Configuration → General. בשדה Domains, החליפו את כתובת היישום הזמנית שהעתקתם מ-Coolify ב-https://app.example.com, תוך שימוש בדומיין שלכם שהוגדר. הפעילו Automatic HTTPS (הוא מופעל בדרך כלל כברירת מחדל).
שמרו ולחצו על Redeploy.
שלב 3. המתינו לאישור של Let's Encrypt.
יומני הבנייה יציגו:
[stage: ssl] Requesting Let's Encrypt cert for app.example.com
[stage: ssl] HTTP challenge sent to /.well-known/acme-challenge/xxx
[stage: ssl] Validation passed, cert issued
[stage: ssl] Cert installed, HTTPS enabled
בתוך 2–3 דקות האתר שלכם יהיה זמין בכתובת https://app.example.com עם מנעול ירוק בשורת הכתובת.
מה עלול להשתבש עם Let's Encrypt (שלוש הבעיות העיקריות מתוך מדריך פתרון התקלות הרשמי):
- פורט 80 סגור בחומת האש. Let's Encrypt מאמתת באמצעות אתגר HTTP — היא שולחת בקשה אל
http://app.example.com/.well-known/acme-challenge/xxx. האימות לא יצליח בלי פורט 80. פתחו אותו בחומת האש של הספק. - ה-proxy של Cloudflare מופעל (ענן כתום). הוא מיירט את בקשת Let's Encrypt ומחזיר דף placeholder משלו — האימות נכשל. הפתרון הוא לעבור ל-“DNS only” (ענן אפור) או להגדיר אתגר DNS-01 דרך ה-API של Cloudflare.
- DNS עדיין לא הופץ. אם יצרתם רשומת A לפני 30 שניות ומיד לחצתם על Redeploy, Let's Encrypt לא תראה את הדומיין שלכם. המתינו 5–30 דקות להפצת DNS בין השרתים.
מגבלת הקצב של Let's Encrypt: 5 ניסיונות כושלים בשעה עבור דומיין אחד, עם התאוששות בקצב של ניסיון אחד כל 12 דקות. אם הגעתם למגבלה, אל תלחצו על Redeploy 10 פעמים ברצף; בדקו את היומנים, תקנו את הבעיה ונסו שוב בעוד 12 דקות.
איך Claude Code מנהלת את Coolify באמצעות MCP?
הנקודה המרכזית
באמצעות Model Context Protocol, Claude Code מקבלת גישה ישירה ל-API של Coolify — אפשר לומר „פרסי את היישום הזה” כדי להתחיל בנייה, לבדוק סטטוס, לקרוא יומנים או לעדכן משתני סביבה. יש שלוש אפשרויות: forsonny/Coolify-MCP-Server (בסיסית, 7 קטגוריות של פעולות), dazeb/coolify-mcp-enhanced (יותר מ-15 כלים נוספים עם פריסת מסד נתונים בקליק אחד) ו-ajmcclary/Coolify-Manager (Claude Skill שנבנה סביב ה-CLI הרשמי). החל מ-v4.1.0 (18 במאי 2026), Coolify מספקת נקודת קצה MCP מקורית ללא שרתי צד שלישי — אך לעת עתה היא לקריאה בלבד.
Model Context Protocol (MCP) הוא תקן של Anthropic שמאפשר ל-Claude Code לתקשר עם מערכות חיצוניות (מידע נוסף במדריך לשרתי MCP). חברו שרת MCP ו-Claude תקבל אוסף כלים שאפשר לקרוא להם. יש שלושה שרתים מוכנים ל-Coolify, ועוד אפשרות מקורית אחת.
אפשרות 1. forsonny/Coolify-MCP-Server-for-Claude-Code — בסיסית.
מה אפשר לעשות איתו:
- יישומים: יצירה, הפעלה, עצירה והפעלה מחדש
- שירותים: הצגה, יצירה, הפעלה/עצירה/הפעלה מחדש
- פריסות: הצגת פריסות פעילות ושליפה לפי UUID
- צוותים וחברים: הצגת רשימה וקבלת פרטים
- מפתחות SSH: הצגה ויצירה
- משתני סביבה: CRUD מלא ליישומים ולשירותים
- תובנות על השרת: דומיינים לכל שרת, תקינות, גרסה
התקנה:
git clone '<OFFICIAL_URL>'
cd Coolify-MCP-Server-for-Claude-Code
npm install
npm run build
# In .env:
# COOLIFY_BASE_URL=https://coolify.example.com
# COOLIFY_API_TOKEN=[from Coolify Settings → API Tokens]
npm run setup # automatically configures Claude Code
אחר כך אפשר לכתוב כך ב-Claude Code:
Show the status of the my-vibe-app application in Coolify and the 3 latest deployments.
Claude תחזיר טבלה.
אפשרות 2. dazeb/coolify-mcp-enhanced — מורחבת (מומלצת).
מה היא מוסיפה לערכה הבסיסית:
- פריסת PostgreSQL / Redis / MinIO בקליק אחד באמצעות AI — בקשו „הגדרי בשבילי Postgres” והיא תיצור מכולה ותחזיר DATABASE_URL
- ניטור בזמן אמת + שימוש במשאבים — CPU/RAM של כל יישום בזמן אמת
- עדכונים מרוכזים של תצורת env — עדכון 20 משתנים בפקודה אחת
- תמיכה ב-Docker Compose — פריסת יישומים עם כמה שירותים
תצורה עבור Claude Code (.mcp.json בשורש הפרויקט):
{
"mcpServers": {
"coolify-enhanced": {
"command": "node",
"args": ["/path/to/coolify-mcp-enhanced/dist/index.js"],
"env": {
"COOLIFY_ACCESS_TOKEN": "your-token-here",
"COOLIFY_BASE_URL": "https://coolify.example.com"
}
}
}
}
אפשרות 3. ajmcclary/Coolify-Manager — Claude Skill שמבוסס על ה-CLI.
זה לא שרת MCP, אלא Claude Code Skill שעוטף את ה-CLI הרשמי של Coolify. הוא כולל:
- אבחון תקינות של שירותים ומכולות
- אבחון אישורי SSL
- תמיכה בכמה מופעים (אם יש לכם כמה שרתי Coolify)
- מתכוני פתרון תקלות
התקנה: הורידו את ה-skill והניחו אותו ב-~/.claude/skills/coolify-manager/. Claude Code תזהה אותו ותציע אותו למשימות רלוונטיות.
אפשרות 4 (חדשה במאי 2026). MCP מקורי ב-Coolify v4.1.0.
יומן השינויים של v4.1.0 מ-18 במאי 2026 אומר:
נוספה תמיכת MCP ברמת המופע, עם כלים לקריאה בלבד למשאבי Coolify ול-API/UI.
עכשיו Coolify מספקת נקודת קצה MCP משלה — אפשר לחבר אליה את Claude Code ישירות בלי שרתי צד שלישי. לעת עתה היא לקריאה בלבד (רשימות יישומים, סטטוסים ותצורות), ללא פעולות שינוי. אבל זה מספיק לרוב המשימות, כמו „ספרי לי על התשתית”.
התחברו באמצעות .mcp.json:
{
"mcpServers": {
"coolify-native": {
"url": "https://coolify.example.com/api/v1/mcp",
"headers": {
"Authorization": "Bearer <your-api-token>"
}
}
}
}
המתינו לגישה מלאה לכתיבה ב-MCP המקורי ב-v4.2 או ב-v4.3 — צוות Coolify הבטיח זאת עד סוף 2026.
5 מלכודות בפריסה הראשונה — ואיך להימנע מהן
הנקודה המרכזית
השגיאות הנפוצות ביותר בפריסה ראשונה הן מחסור ב-RAM, פורט 80 סגור, proxy של Cloudflare ששובר את Let's Encrypt, UFW שלא מצליחה להגן על Docker ובחירה ב-PAT במקום ב-GitHub App. כולן מכוסות בתיעוד הרשמי, אבל קל להיתקל בהן ללא ניסיון מעשי. לפניכם רשימת בדיקה בת 5 נקודות המבוססת על הניסיון המקורי בהתקנת Coolify לראשונה.
מלכודת 1: פחות מ-2 GB RAM — ההתקנה נכשלת עם OOM.
תסמין: curl install.sh מגיע ל-docker pull coolify/coolify, נתקע ב-70% ואז התהליך נהרג עם Killed (signal 9). ביומני dmesg | tail מופיע Out of memory: Killed process.
פתרון:
# יצירת קובץ swap בנפח 4 GB לפתרון זמני של הבעיה
sudo fallocate -l 4G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab
לטווח ארוך, שדרגו ל-4 GB RAM. Coolify פועלת עם swap, אך בניות של פרויקטי Next.js גדולים עלולות להיכשל.
מלכודת 2: UFW מופעלת, אבל Docker עדיין פותח פורטים.
תסמין: הפעלתם את UFW וסגרתם את כל הפורטים מלבד 22, אך עדיין אפשר לגשת ליישום שלכם מהאינטרנט בפורט אקראי כלשהו (כגון 3000).
הסיבה, לפי התיעוד הרשמי:
Coolify פועלת על Docker, שמשתמש בכללי iptables מבוססי NAT ויכול לעקוף חומות אש מסורתיות של Linux כגון UFW.
פתרון: השתמשו בחומת האש בלוח הבקרה של הספק, לא ב-UFW. ב-Timeweb / Selectel / Aeza יש חלק בשם “Firewall” או “Network → Firewall”, שבו מגדירים כללים ברמת הרשת הווירטואלית — הם פועלים לפני שהמנות מגיעות ל-Docker.
חלופה היא ufw-docker, סקריפט שמתאים את UFW לתאימות עם Docker. אבל זה מסובך יותר מלחיצה בלוח הבקרה.
מלכודת 3: ה-proxy של Cloudflare (ענן כתום) שובר את Let's Encrypt.
תסמין: לאחר Redeploy, היומנים מציגים Let's Encrypt validation failed - challenge returned 403.
סיבה: Cloudflare מנתבת דרך ה-proxy את בקשת HTTP של Let's Encrypt ומחזירה עמוד משלה במקום את קובץ האתגר שלכם.
פתרון — בחרו באחת משתי אפשרויות:
- עברו ל-“DNS only” (הענן האפור ב-Cloudflare). החיסרון: תאבדו את CDN ואת ההגנה של Cloudflare.
- הגדירו אתגר DNS-01 דרך ה-API של Cloudflare. ב-Coolify, עברו אל Settings → SSL Configuration, בחרו בספק Cloudflare והזינו אסימון API עם הרשאות Zone:Read ו-DNS:Edit. Let's Encrypt תאמת באמצעות רשומת TXT במקום HTTP.
האפשרות השנייה מורכבת יותר להגדרה, אך משמרת את ה-proxy של Cloudflare.
מלכודת 4: PAT במקום GitHub App — תצוגות מקדימות של PR לא פועלות.
תסמין: חיברתם את GitHub באמצעות Personal Access Token; הכול פועל, אבל לא נוצרות תצוגות מקדימות של פריסות עבור PR. פתחתם PR ב-GitHub, אך שום דבר לא הופיע ב-Coolify.
סיבה: תצוגות מקדימות של PR הן תכונה בלעדית ל-GitHub App. PAT לא מקבל אירועי pull_request דרך webhook.
פתרון: חברו מחדש את GitHub באמצעות App. Sources → Add → GitHub App → השלימו את האשף. אפשר למחוק את מקור ה-PAT הישן.
מלכודת 5: הטענה „Coolify == Vercel” אינה נכונה לחלוטין.
מה Coolify לא עושה מהקופסה:
| Vercel | Coolify | מה לעשות |
|---|---|---|
| CDN גלובלי | לא | הציבו את Cloudflare לפניה (בחינם לתוכן סטטי) |
| Incremental Static Regeneration | לא | revalidatePath פועל רק בשרת שלכם |
| אופטימיזציה של תמונות | לא | השתמשו ב-next/image עם loader מקומי או ב-Cloudflare Images |
| התאמה אוטומטית של קנה המידה בזמן שיא | לא | הרחיבו ידנית; שדרגו את ה-VPS |
| Edge Functions | לא | השתמשו בנתיבי API רגילים |
אם הפרויקט שלכם הוא SaaS עתיר תעבורה עם קהל גלובלי ודרישות השהיה של < 100 ms ברחבי העולם, Coolify אינה מתאימה; בחרו ב-Vercel Enterprise. אם אתם מפתחי Vibe עם MVP שאתם בודקים בקרב 100–1,000 משתמשים ביום, Coolify מספקת מענה לכל הצרכים.
מתוך ניתוח כן של אירוח עצמי:
15 הדקות שבכותרת המדריך הזה מתייחסות למסלול החלק של הפריסה הראשונה של פרויקט אחד. הגדרת תשתית מלאה עם ניטור, גיבויים והתראות נמשכת ערב אחד או שניים. היו כנים עם עצמכם.
כמה תחסכו בשנה לעומת Vercel?
הנקודה המרכזית
יש „מס נסתר בזמן” של 5–10 שעות להגדרה הראשונית ועוד 1–2 שעות בחודש לתחזוקה.
נתוני Vercel שלהלן הם אומדני התרחישים של המאמר ממאי 2026, ולא הצעות מחיר עדכניות. הם רק צד אחד בהשוואה. ל-Coolify באירוח עצמי אין דמי רישיון, אך VPS, גיבויים, אחסון, תעבורה ותפעול עדיין עולים כסף. קבלו הצעת מחיר שעונה על הדרישות שלמעלה; בתרחישים האלה לא סופק מחיר VPS מספרי, ולכן טענה לחיסכון קבוע אינה נתמכת.
נסמן ב-C את כלל חשבון התשתית החודשי של ה-VPS שנבחר, אחסון גיבויים, תעבורה נוספת, ניטור וכל אפשרות לוח בקרה בתשלום. כללו כל הוצאה פעם אחת. נסמן ב-r את עלות שעת התפעול שלכם, באותו מטבע לאורך החישוב. אומדן הזמן במאמר הוא 5–10 שעות בתחילה ועוד 1–2 שעות בחודש: 17–34 שעות בשנה הראשונה ו-12–24 שעות בשנים הבאות.
| תרחיש | אומדן Vercel לחודש | Vercel לשנה | תשתית Coolify לחודש | עלות כוללת בשנה הראשונה ב-Coolify, כולל עבודה | חיסכון בשנה הראשונה מול Vercel |
|---|---|---|---|---|---|
| אב טיפוס אחד, 100,000 ביקורים בחודש | $20 בסיס + כ-$5 תעבורה = $25 | $300 | C | 12C + (17–34)r | $300 − 12C − (17–34)r |
| חמישה פרויקטים ב-VPS אחד | $20 בסיס + $30 תעבורה ופונקציות = $50 | $600 | C | 12C + (17–34)r | $600 − 12C − (17–34)r |
| שלושה מפתחים, חמישה פרויקטים | $60 מושבים + $30 תעבורה = $90 | $1,080 | C | 12C + (17–34)r | $1,080 − 12C − (17–34)r |
השתמשו ב-C נפרד לכל תרחיש אם עומסי העבודה דורשים גדלי שרת שונים. להשוואה חודשית, פרסו את זמן ההגדרה הראשוני על פני 12 חודשים: הערך החודשי השקול בשנה הראשונה הוא C + (17–34)r/12. העלות הכוללת בשנים הבאות היא 12C + (12–24)r. הנוסחאות משוות את אומדן Vercel שנמסר להוצאות אירוח עצמי; כללו גם עלות תפעול בת השוואה בצד Vercel. חיסכון שלילי אומר שאירוח עצמי יקר יותר לפי הנתונים שלכם. אל תספרו שוב את מלוא שכר אותו מהנדס אם r כבר כולל אותו.
לפני מעבר, מלאו C לפי הצעת ספק אמיתית ותוכנית גיבוי, בחרו r והשוו שימוש בפועל במשך חודש. ללא הנתונים האלה, המאמר תומך במודל עלות ולא בטענת חיסכון בדולרים.
היתרון העיקרי אינו הכסף. כשעוברים ל-Coolify, הקטגוריה „תלויים במדיניות התשלומים של מישהו אחר” נעלמת. כבר אין צורך בכרטיסי תיווך וירטואליים עם עמלה של 20%.
Coolify אינה גרסה זולה יותר של Vercel. היא קטגוריית מוצר אחרת: אתם הבעלים של התשתית, מקבלים עליה אחריות והעלות הכוללת תלויה בחשבון התשתית ובזמן התפעול שלכם.
אם פריסת אבטיפוס היא המשימה הראשונה שלכם לאחר יצירה ב-Claude Code, ניהול הסביבה (env, סודות, משימות מתוזמנות, גיבויים) הוא חלק מהנדסת הקשר. בלי מבנה שמגדיר „איפה כל דבר נמצא”, Claude הולכת לאיבוד ואתם מבזבזים זמן בכל שינוי. ההתקנה המלאה כוללת: שיבוט AI (Skills ו-Subagents המותאמים לשיטה שלכם) + מוח שני (בסיס הידע של הפרויקט) + הנדסת הקשר (Plan Mode, /compact, סביבת ביצוע). אלה 3 עמודי התווך שבלעדיהם AI הוזה.
מקורות
תהליך העבודה המלא עם הקשר: שיבוט AI + מוח שני + הנדסת הקשר.
חומרים נוספים זמינים ב-Ailoot.
פרטים נוספים
שאלות ותשובות: Coolify ו-Claude Code: פריסת פרויקט ב-VPS משלכם
איזו כתובת אמורה להחזיר JSON אחרי הפריסה?
העתיקו את כתובת היישום שמוצגת בשדה Domains של Coolify ופתחו את הנתיב /api/users שלה. כתובת השורש היא דף הבית; /api/users היא נקודת הקצה ל-JSON שהוגדרה בפרויקט לדוגמה.
איך לחשב אם אירוח עצמי חוסך כסף?
חברו את חיובי ה-VPS, הגיבויים, האחסון, התעבורה, הניטור ולוח הבקרה האופציונלי לחודש לתוך C. העלות הכוללת בשנה הראשונה היא 12C ועוד 17–34 שעות לפי העלות השעתית שלכם; השוו לאומדן Vercel השנתי בתרחיש וכללו עלויות תפעול בנות השוואה בשני הצדדים.