# פרויקט מסכם — אינטגרציה מלאה עם docker-compose📖 שיעור

## הגדרת הפרויקט

זהו הפרויקט המסכם של הפרויקט הצוותי כולו: הצוות (4 חברים) צריך להריץ את כל ארבעת השירותים (Collector, Analyzer, Alert, Dashboard) יחד עם `docker-compose` (במקום `docker run` נפרד לכל אחד), לאמת זרימת אירוע קצה-לקצה מלאה, ולעבור תהליך עבודה צוותי אמיתי — Pull Request לכל פיצ'ר, קוד-ריוויו בין חברי הצוות, וניפוי-שגיאות משותף כשמשהו לא עובד באינטגרציה. עד כה כל שיעור בדק שירות אחד בבידוד — כאן בקשת HTTP יחידה ל-Collector צריכה "לזרום" דרך כל המערכת ולהופיע ב-Dashboard, בלי שאף חלק מהזרימה מוזרק ידנית. אם זה עובד מקצה לקצה, כל ה-Interface Contracts שתוכננו מראש היו נכונים בפועל, לא רק בתאוריה.

## מה צריך להיות מוכן בסוף

**דרישות:**
1. `docker-compose.yml` מלא עם כל 6 השירותים (Kafka, Redis, ו-4 שירותי הצוות), כולל `depends_on` נכון בין השירותים
2. בדיקת End-to-End: בקשת HTTP אחת ל-Collector, מאומתת שמגיעה בסוף ל-`/stats` ב-Dashboard
3. לפחות שינוי אחד שנעשה דרך Pull Request עם קוד-ריוויו מחבר צוות אחר
4. הצגה קצרה של הצוות (5 דקות) שמדגימה את הזרימה המלאה בשידור חי

**קריטריוני הצלחה:**

• `docker-compose up` מריץ את כל המערכת בהצלחה בפקודה אחת

• אירוע "רגיל" שנשלח ל-Collector מופיע ב-`totalEvents` ב-Dashboard

• אירוע קיצוני מופיע גם ב-`totalAnomalies` וגם מייצר התראה ב-Alert — הכל מבקשת HTTP יחידה, בלי הזרקה ידנית של אף שלב ביניים

• כל שירות מדבר עם האחרים בשם השירות (`kafka:9092` וכדומה), לא IP קשיח

## דוקומנטציה רשמית מותרת

[Docker — Compose overview](https://docs.docker.com/compose/)
