Menghubungkan ke server HTTP yang berjalan di workstation

Secara default, Anda dapat terhubung ke port HTTP 80 dan port 1024 hingga 65535 di workstation dari browser. Anda dapat membatasi port yang dapat dihubungkan di workstation dengan menetapkan allowedPorts dalam konfigurasi workstation.

Workstation yang berjalan memiliki properti host yang dapat Anda gunakan untuk terhubung menggunakan HTTP dari browser jarak jauh. Anda dapat menemukan properti host dengan mendapatkan detail untuk workstation yang sedang berjalan melalui API, Google Cloud CLI, konsol Google Cloud , atau dengan mencetak variabel lingkungan $WEB_HOST, yang otomatis ditetapkan di dalam workstation Anda. URL terhubung di port 80 secara default.

Format URL workstation default

URL properti host menggunakan format berikut secara default:

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

Placeholder mewakili hal berikut:

  • PORT: nomor port, yang secara default adalah port 80.
  • WORKSTATION_NAME: nama workstation.
  • CLUSTER_ID: ID cluster yang dibuat secara acak.
  • cloudworkstations.dev: nama domain default untuk workstation.

    URL untuk domain kustom menggunakan format yang berbeda. Untuk mengetahui informasi selengkapnya tentang cara menyiapkan domain kustom di Cloud Workstations, lihat Menyiapkan domain kustom untuk Cloud Workstations.

Menghubungkan ke port lain dengan mengubah URL

Untuk terhubung di port yang berbeda, tentukan nomor port yang berbeda sebagai awalan. Misalnya, URL berikut terhubung ke port 9900:

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

Dalam contoh ini, perhatikan hal berikut:

  • 9900: mewakili nomor port.
  • myworkstation: mewakili ID workstation.
  • cluster-12345abcde: mewakili ID cluster.
  • cloudworkstations.dev: mewakili nama domain default untuk workstation.

URL ini memerlukan autentikasi pengguna. Untuk membuka URL ini, Anda harus login dan harus memiliki peran IAM Pengguna Cloud Workstations, roles/workstations.user, atau izin workstations.workstations.use.

Jika cluster workstation Anda dikonfigurasi dengan port akses langsung, alih-alih mengenkode port sebagai awalan, Anda dapat terhubung ke port yang dikonfigurasi dengan menambahkan :PORT ke nama host workstation. Misalnya, setelah Anda mengonfigurasi port 9900 sebagai port akses langsung, URL berikut juga akan terhubung ke port 9900:

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

Menghubungkan ke aplikasi HTTP dari konsol Google Cloud

Anda dapat terhubung ke aplikasi HTTP yang berjalan di workstation dari konsolGoogle Cloud .

Untuk setiap workstation yang sedang berjalan dan Anda memiliki izin untuk menggunakannya, Anda akan melihat tombol Launch. Secara default, tombol ini terhubung di port 80. Anda dapat mengklik panah untuk meluaskan arrow_drop_down di samping Launch untuk melihat opsi koneksi alternatif. Opsi Connect to web app on port memungkinkan Anda menentukan port lain untuk dihubungkan.

Menghubungkan ke aplikasi HTTP dari editor dasar

Untuk terhubung ke aplikasi yang berjalan di workstation Anda dari editor dasar Cloud Workstations, ikuti salah satu petunjuk berikut:

  • Klik link localhost di terminal. Editor dasar akan otomatis mengalihkan link localhost ke URL yang tepat.

    1. Untuk membuka jendela terminal, klik menu Menu > Terminal > New Terminal. Atau, tekan Control+Shift+` (atau Command+Shift+` di macOS).

    2. Pada command prompt, jalankan perintah berikut untuk menampilkan link localhost:

      echo http://localhost:PORT
      

      Ganti PORT dengan nomor port seperti 80 atau 8080.

    3. Tahan Control (atau Command di macOS), lalu klik link localhost.
      Tindakan ini akan membuka PORT-WORKSTATION_HOSTNAME di browser Anda.

  • Gunakan jendela browser: buka https://PORT-WORKSTATION_HOSTNAME, dengan PORT adalah nomor port dan WORKSTATION_HOSTNAME adalah nama host workstation Anda.

Mengonfigurasi port akses langsung

Secara default, saat Anda terhubung ke port workstation dengan mengenkode port sebagai awalan di URL, permintaan Anda akan terhubung ke gateway cluster melalui port HTTPS 443, dan gateway akan meneruskan permintaan ke PORT di workstation Anda.

Untuk terhubung langsung ke port workstation menggunakan format URL https://WORKSTATION_NAME.CLUSTER_ID.cloudworkstations.dev:PORT standar, Anda harus mengonfigurasi port tersebut sebagai port akses langsung di cluster workstation.

Untuk menetapkan port akses langsung di cluster workstation yang ada, jalankan perintah Google Cloud CLI berikut:

    gcloud beta workstations clusters update CLUSTER_ID \
        --region=REGION \
        --project=PROJECT \
        --direct-access-ports=80,8080

Anda hanya dapat mengonfigurasi port 80 dan port dalam rentang 1024 hingga 65535 sebagai port akses langsung. Anda juga tidak dapat menentukan lebih dari delapan port akses langsung per cluster workstation.

Membatasi akses port untuk workstation

Untuk membatasi port yang dapat dihubungkan ke workstation, tetapkan allowedPorts dalam konfigurasi workstation.

Untuk membatasi satu port, tetapkan kolom PortRange first dan last ke nomor port yang sama.

Secara default, port 22, 80, dan 1024 hingga 65535 diizinkan.

Untuk membuat konfigurasi workstation dengan akses port terbatas ke 80 dan 8080 ke 8100, jalankan perintah Google Cloud CLI berikut:

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

Permintaan preflight CORS

Secara default, Cloud Workstations memastikan bahwa semua permintaan HTTP/HTTPS ke workstation diautentikasi menggunakan cookie atau header autentikasi.

Permintaan preflight Cross-Origin Resource Sharing (CORS) tidak menyertakan cookie atau header kustom, sehingga dianggap tidak diautentikasi dan diblokir oleh Cloud Workstations. Administrator dapat secara opsional mengizinkan permintaan preflight CORS yang tidak diautentikasi ke workstation, yang menjadi tanggung jawab server tujuan di workstation untuk memvalidasi permintaan.

Untuk mengizinkan permintaan preflight CORS yang tidak diautentikasi, jalankan perintah Google Cloud CLI berikut:

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

Menonaktifkan penggantian localhost dalam respons HTTP

Agar aplikasi yang sedang dikembangkan dapat berjalan dengan baik di workstation, Cloud Workstations mengganti referensi ke localhost, 127.0.0.1, dan 0.0.0.0 dengan nama host workstation dalam respons HTTP dari workstation.

Tindakan ini mungkin mengganggu beberapa aplikasi. Untuk menonaktifkan perilaku ini, jalankan perintah Google Cloud CLI berikut:

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