חיבור לשרתי HTTP שפועלים בתחנת עבודה

כברירת מחדל, אפשר להתחבר ליציאות HTTP‏ 80 וליציאות 1024 עד 65535 בתחנות העבודה מהדפדפן. אתם יכולים להגביל את היציאות שאליהן אפשר להתחבר בתחנות העבודה שלכם על ידי הגדרת allowedPorts בהגדרות של תחנת העבודה.

למחשבי תחנות עבודה פעילים יש מאפיין host שאפשר להשתמש בו כדי להתחבר באמצעות HTTP מדפדפן מרוחק. אפשר למצוא את המאפיין host על ידי קבלת פרטים של תחנת עבודה פעילה דרך ה-API,‏ Google Cloud CLI,‏ Google Cloud המסוף או על ידי הדפסת משתנה הסביבה $WEB_HOST, שמוגדר באופן אוטומטי בתוך תחנת העבודה. כתובת ה-URL מתחברת ליציאה 80 כברירת מחדל.

פורמט כתובת ה-URL של תחנת עבודה שמוגדר כברירת מחדל

כתובת ה-URL של הנכס host מבוססת על הפורמט הבא כברירת מחדל:

https://PORT-WORKSTATION_NAME.CLUSTER_ID.cloudworkstations.dev

ה-placeholders מייצגים את הנתונים הבאים:

  • PORT: מספר היציאה, שהוא יציאה 80 כברירת מחדל.
  • WORKSTATION_NAME: שם תחנת העבודה.
  • CLUSTER_ID: מזהה האשכול שנוצר באופן אקראי
  • cloudworkstations.dev: שם הדומיין שמוגדר כברירת מחדל לתחנת עבודה.

    כתובות URL של דומיינים בהתאמה אישית הן בפורמט שונה. מידע נוסף על הגדרת דומיינים מותאמים אישית ב-Cloud Workstations זמין במאמר הגדרת דומיינים מותאמים אישית ל-Cloud Workstations.

מתחברים ליציאה אחרת על ידי שינוי כתובת ה-URL

כדי להתחבר ליציאה אחרת, מציינים מספר יציאה אחר כקידומת. לדוגמה, כתובת ה-URL הבאה מתחברת ליציאה 9900:

https://9900-myworkstation.cluster-12345abcde.cloudworkstations.dev

בדוגמה הזו, חשוב לשים לב לנקודות הבאות:

  • 9900: מייצג את מספר היציאה.
  • myworkstation: מייצג את המזהה של תחנת העבודה.
  • cluster-12345abcde: מייצג את מזהה האשכול.
  • cloudworkstations.dev: מייצג את שם הדומיין שמוגדר כברירת מחדל לתחנת עבודה.

כתובות ה-URL האלה דורשות אימות משתמש. כדי לפתוח את כתובות ה-URL האלה, אתם צריכים להיות מחוברים לחשבון שלכם וצריכה להיות לכם הרשאת roles/workstations.user או workstations.workstations.use, או תפקיד IAM של משתמש ב-Cloud Workstations‏ roles/workstations.user.

התחברות לאפליקציית HTTP מ Google Cloud Console

אפשר להתחבר לאפליקציית HTTP שפועלת בתחנת עבודה מGoogle Cloud המסוף.

לכל תחנת עבודה פעילה שיש לכם הרשאה להשתמש בה, יופיע לחצן הפעלה. כברירת מחדל, הכפתור הזה מתחבר ליציאה 80. אפשר ללחוץ על החץ arrow_drop_downלהרחבה לצד הפעלה כדי לראות אפשרויות חיבור חלופיות. האפשרות Connect to web app on port מאפשרת לציין יציאה אחרת להתחברות.

התחברות לאפליקציית HTTP מהעורך הבסיסי

כדי להתחבר לאפליקציה שפועלת בתחנת העבודה שלכם מהעורך הבסיסי של Cloud Workstations, פועלים לפי אחת מההוראות הבאות:

  • לוחצים על קישורי localhost בטרמינל. העורך הבסיסי מפנה אוטומטית קישורים ל-localhost לכתובות ה-URL הנכונות.

    1. כדי לפתוח חלון מסוף, לוחצים על תפריט תפריט > מסוף > מסוף חדש. אפשר גם להקיש על Control+Shift+`‎ (או על Command+Shift+`‎ ב-macOS).

    2. בשורת הפקודה, מריצים את הפקודה הבאה כדי להציג את הקישור ל-localhost:

      echo http://localhost:PORT
      

      מחליפים את PORT במספר יציאה כמו 80 או 8080.

    3. מחזיקים את המקש Control (או Command ב-macOS) ואז לוחצים על הקישור של localhost.
      הקישור ייפתח PORT-WORKSTATION-HOSTNAME בדפדפן.

  • משתמשים בחלון הדפדפן: עוברים אל https://PORT-WORKSTATION-HOSTNAME, כאשר PORT הוא מספר היציאה ו-WORKSTATION-HOSTNAME הוא שם המארח של תחנת העבודה.

הגבלת הגישה ליציאות בתחנת עבודה

כדי להגביל את היציאות שאפשר להתחבר אליהן בתחנת עבודה, צריך להגדיר את allowedPorts בהגדרות של תחנת העבודה.

כדי להגביל יציאה אחת, מגדירים את השדות PortRange first ו-last לאותו מספר יציאה.

כברירת מחדל, מותרות היציאות 22, 80 ו-1024 עד 65535.

כדי ליצור הגדרת תחנת עבודה עם גישה מוגבלת ליציאות 80 ו-8080 אל 8100, מריצים את הפקודה הבאה ב-CLI של Google Cloud:

    gcloud workstations configs create CONFIG \
        --cluster=CLUSTER_ID \
        --region=REGION \
        --project=PROJECT \
        --allowed-ports=first=80,last=80 \
        --allowed-ports=first=8080,last=8100

בקשות קדם-הפעלה של CORS

כברירת מחדל, Cloud Workstations מוודא שכל בקשות HTTP/HTTPS לתחנת העבודה מאומתות באמצעות קובץ Cookie או כותרת אימות.

בקשות קדם-הפעלה של שיתוף משאבים בין מקורות (CORS) לא כוללות קובצי Cookie או כותרות מותאמות אישית, ולכן הן נחשבות לא מאומתות ונחסמות על ידי Cloud Workstations. אדמינים יכולים לאפשר באופן אופציונלי לבקשות קדם-הפעלה של CORS לא מאומתות לעבור אל תחנת העבודה, ואז האחריות לאימות הבקשה עוברת לשרת היעד בתחנת העבודה.

כדי לאפשר בקשות קדם-הפעלה של CORS ללא אימות, מריצים את הפקודה הבאה ב-CLI של Google Cloud:

    gcloud beta workstations configs update CONFIG \
        --cluster=CLUSTER_ID \
        --region=REGION \
        --project=PROJECT \
        --allow-unauthenticated-cors-preflight-requests

השבתה של החלפת localhost בתגובות HTTP

כדי לאפשר לאפליקציות שנמצאות בפיתוח לפעול בצורה תקינה בתחנת העבודה, Cloud Workstations מחליף הפניות ל-localhost, ל-127.0.0.1 ול-0.0.0.0 בשם המארח של תחנת העבודה בתגובות HTTP מתחנת העבודה.

יכול להיות שהדבר ישפיע על חלק מהאפליקציות. כדי להשבית את ההתנהגות הזו, מריצים את הפקודה הבאה ב-CLI של Google Cloud:

    gcloud beta workstations configs update CONFIG \
        --cluster=CLUSTER_ID \
        --region=REGION \
        --project=PROJECT \
        --disable-localhost-replacement