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 terhubung 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 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 lain, tentukan nomor port lain 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.

Menghubungkan ke aplikasi HTTP dari Google Cloud konsol

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

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

Menghubungkan ke aplikasi HTTP dari editor dasar

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

  • Klik link localhost di terminal. Editor dasar 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. Di 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.

Membatasi akses port untuk workstation

Untuk membatasi port yang dapat terhubung di 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 hingga 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 tersebut.

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 benar 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.

Hal ini dapat 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