# הקדמה — מה נלמד ביחידה הזו🧭 הקדמה

מכירים את המשפט "אצלי זה עבד"? זו אחת הבעיות הנפוצות ביותר בתכנות — תוכנה שרצה מצוין על המחשב של מפתח אחד, ומתרסקת אצל מישהו אחר, כי למחשבים שלהם יש הגדרות שונות (גרסה אחרת, תוכנה חסרה, וכו'). Docker הוא כלי שפותר בדיוק את הבעיה הזו: הוא "אורז" תוכנה יחד עם כל מה שהיא צריכה כדי לרוץ — כמו קופסה סגורה שאפשר להעביר לכל מחשב, ובכל מקום היא תיפתח ותרוץ באותה צורה בדיוק.

## מה הולכים ללמוד בשיעורים הבאים

- **מה זה בעצם "לארוז" תוכנה, ולמה זה עדיף על התקנה ידנית** — במקום להתקין ידנית תוכנות ותלויות על כל מחשב בנפרד, בונים "קופסה" אחת סגורה שכוללת הכול, וכל מחשב שמריץ אותה מקבל בדיוק את אותה התנהגות.
- **איך כותבים "מתכון" שמתאר בדיוק מה התוכנה צריכה כדי לרוץ** — קובץ טקסט פשוט שאומר "תתקין את זה, תעתיק את זה, תריץ את זה" — ומ-Docker בונה ממנו את הקופסה הסגורה.
- **איך מפעילים, עוצרים ומנהלים את הקופסה הזו לאורך זמן** — בדיוק כמו שמפעילים ומכבים מכשיר חשמלי, רק שכאן זו תוכנית שלמה.

## עם מה תצאו מהחלק הזה

בסוף החלק הזה תדעו לקחת תוכנה שבניתם ולהריץ אותה בכל מחשב או שרת בעולם, באותה צורה בדיוק — בלי להתקין הכול ידנית מחדש בכל פעם. זו יכולת בסיסית שכל צוות פיתוח מודרני משתמש בה.
