
ENV.port, ואם הוא לא קיים נלקח 8080. מעתיקים את השורה ל-main.py, ומוסיפים import os (ספרייה מובנית שרק צריך לייבא).set מציג את משתני הסביבה של Windows, כמו tmp ו-userprofile. מגדירים set port=81 ומריצים את האתר, והוא מאזין לפורט 81. אחרי set port=82 ההרצה הבאה עובדת ב-82, ו-81 כבר לא עונה, והכול בלי שינוי בקוד.ENV PORT=81 ושורת EXPOSE משתמשת בו, כך שהפורט מוגדר במקום אחד בלבד. אותו דבר עושים עם APP_HOME (תיקיית /app) ועם FILES (התיקייה files1), ומשתמשים בהם עם סימן דולר. בלי כפילות יש פחות מקום לטעויות.docker build בגרסה 03. Docker מזהיר שצריך סימן שווה בין key ל-value, ולכן עוברים לפורמט החדש ENV key=value. מריצים עם פורט חיצוני 9191 לפורט פנימי 8181 (כפי שמצוין בהרצאה), והאתר עובד.docker ps מציג את הקונטיינר, ו-docker exec -it עם bash נכנס אליו. הפקודה env מציגה את המשתנים מה-Dockerfile ואת HOME ש-Linux קבע בעצמו.הטקסט המלא של הדקות הראשונות בהרצאה «קונטיינר בענן - Cloud Run משתנה סביבה בתוך הקונטיינר» בקורס הווידאו של PracticU – כתוביות בעברית עם זמן התחלה לכל פסקה. כך תוכלו לקרוא ולחפש את הנושאים לפני שמתחילים ללמוד.
שלום לכולם. בהרצאה זו נלמד על משתני סביבה כדי שנוכל להשפיע על התוכנה שלנו מבחוץ בלי להיכנס לקוד שלה. לדוגמה, כאן אנחנו יכולים לראות שהפורט בו רצה התוכנה שלנו, האתר שלנו, הפורט נקבע על ידי משתנה סביבה בשם port ואם אין אותו אז שמונים, שמונים.
אם אני אקח את השורה הזאת ואני אכניס אותה לתוך הקוד של האתר שלנו, פה ב-main נקודה py, פתאום האתר שלנו לא יהיה קבוע בפורט שמונים, שמונים, ואם מישהו רוצה לשנות אותו הוא יצטרך לחפש איפה בקוד זה מופיע, אלא אפשר יהיה לשים את הפורט במשתנה סביבה, ואם אין משתנה סביבה אז לוקחים פורט שמונים, שמונים כברירת מחדל.
ולמעשה זאת הדרך שבה המתכנת מתקשר עם המשתמש שלו בלי ממשק גרפי. בואו נראה מה יש לנו בתוך הווינדוס שלנו לדוגמה כרגע. תסתכלו.
כרגע יש לנו פה set. אתם רואים? tmp זה איפה לשים תיקייה זמנית או temp, איפה לשים קבצים זמניים. system root זה איפה נמצא Windows.
user profile, איפה לשמור את המסמכים שלי ואת הדסקטופ שלי, את כל הפרופיל של היוזר. ואז התוכנה הכללית שאני כותב לוקחת את המשתנה הסביבה הזה ויודעת איפה הדסקטופ שלי ואיפה My Documents.
בואו נוסיף פה משתנה בשם port שווה, נניח שמונים ואחד, שמונים ואחד. ברגע שאני עושה את המשתנה סביבה הזה ושומר את הקוד החדש שלי, Save, רק אני צריך להיכנס לתיקייה הזאת.
אז אני מעתיק את התיקייה של האתר, הולך ל-CD שלי, עושה CD, עובר לתיקייה הזאת, בודק שב-set יש לנו פה port שמונים ואחד, שמונים ואחד. נריץ main.py וחסרה פה ספריית OS.