Cara kerja Cloud Shell

Cloud Shell menyediakan mesin virtual Compute Engine yang menjalankan sistem operasi Linux berbasis Debian untuk penggunaan sementara Anda. Mesin virtual ini dimiliki dan dikelola oleh Google Cloud, sehingga tidak akan muncul dalam project Anda Google Cloud .

Instance Cloud Shell disediakan per pengguna, per sesi. Instance akan tetap ada selama sesi Cloud Shell Anda aktif; setelah satu jam tidak ada aktivitas, sesi Anda akan berakhir dan VM-nya akan dihapus. Untuk mengetahui kuota penggunaan selengkapnya, lihat panduan batasan.

Dengan pengalaman Cloud Shell default, Anda akan dialokasikan VM efemeral yang telah dikonfigurasi dan lingkungan yang Anda gunakan adalah container Docker yang berjalan di VM tersebut. Anda juga dapat menyesuaikan lingkungan secara otomatis saat VM di-booting untuk memastikan instance Cloud Shell Anda menyertakan alat pilihan Anda.

Penyimpanan persistent disk

Cloud Shell menyediakan penyimpanan persistent disk gratis sebesar 5 GB yang terpasang sebagai direktori $HOME di instance mesin virtual. Penyimpanan ini bersifat per pengguna dan tersedia di seluruh project. Tidak seperti instance itu sendiri, penyimpanan ini tidak akan habis masa berlakunya jika tidak ada aktivitas. Semua file yang Anda simpan di direktori beranda, termasuk software yang diinstal, skrip, dan file konfigurasi pengguna seperti .bashrc dan .vimrc, akan tetap ada untuk sesi lainnya. Direktori $HOME Anda bersifat pribadi dan tidak dapat diakses oleh pengguna lain.

Saat menggunakan Cloud Shell, Anda tidak dapat memperluas ruang penyimpanan persistent disk. Untuk kontrol yang lebih besar atas persistensi penyimpanan Anda, dan untuk ruang penyimpanan yang lebih besar, Anda dapat menggunakan Cloud Workstations.

Cloud Shell juga menawarkan mode sementara yang merupakan pengalaman Cloud Shell tanpa penyimpanan persistent disk. Dengan mode Efemeral, Anda akan memiliki waktu startup yang lebih cepat, tetapi semua file yang Anda buat dalam sesi Anda akan hilang saat sesi berakhir.

Otorisasi

Saat Anda membuat panggilan API Google Cloud atau menggunakan alat command line yang memerlukan kredensial (seperti Google Cloud CLI) dengan Cloud Shell untuk pertama kalinya, Cloud Shell akan meminta Anda untuk memberikan otorisasi. Klik Authorize untuk mengizinkan alat menggunakan kredensial Anda guna melakukan panggilan.

Lihat Memberikan otorisasi dengan Cloud Shell untuk mengetahui detail selengkapnya.

Variabel lingkungan yang telah dikonfigurasi

Saat Cloud Shell dimulai, project aktif di konsol Google Cloud akan disebarkan ke konfigurasi gcloud Anda di dalam Cloud Shell untuk penggunaan langsung. GOOGLE_CLOUD_PROJECT, variabel lingkungan yang digunakan oleh dukungan library Kredensial Default Aplikasi untuk menentukan ID project, juga ditetapkan untuk mengarah ke project aktif di konsol. Google Cloud Variabel lingkungan WEB_HOST mengarah ke nama host VM Cloud Shell yang dapat Anda gunakan untuk membuat permintaan HTTPS ke lingkungan.

Pilihan zona

Cloud Shell didistribusikan secara global di beberapa Google Cloud region. Saat pertama kali terhubung ke Cloud Shell, Anda akan otomatis ditetapkan ke region terdekat yang tersedia. Anda tidak dapat memilih region sendiri dan jika Cloud Shell tidak memilih region terdekat, Cloud Shell akan mencoba memigrasikan VM Cloud Shell Anda ke region yang lebih dekat saat VM Cloud Shell Anda tidak digunakan.

Untuk melihat region saat ini, jalankan perintah berikut dari sesi Cloud Shell:

curl metadata/computeMetadata/v1/instance/zone

Peluncuran image

Image container Cloud Shell diperbarui setiap minggu untuk memastikan alat yang telah dikemas tetap terbaru. Artinya, Cloud Shell selalu dilengkapi dengan gcloud CLI, Docker, dan utilitas lainnya versi terbaru.

Pengguna root

Saat menyiapkan sesi Cloud Shell, Anda akan mendapatkan akun pengguna Unix reguler dengan nama pengguna berdasarkan alamat email Anda. Dengan akses ini, Anda memiliki hak istimewa root penuh pada VM yang dialokasikan dan bahkan dapat menjalankan perintah sudo, jika diperlukan.

Alat yang tersedia

Instance mesin virtual Cloud Shell memiliki alat berikut yang telah diinstal:

Jenis Alat
Interpreter shell Linux bash
sh
Utilitas Linux Utilitas sistem Debian standar
gcloud CLI dan alat Google Cloud CLI termasuk gcloud CLI
Editor teks Emacs
Vim
Nano
Alat build dan paket Gradle
Helm
Make
Maven
Bazel
npm
nvm
pip
uv
Composer
Alat kontrol sumber Git
Mercurial
Alat tambahan Docker
iPython
Klien MySQL
Compiler gRPC
TensorFlow

Anda dapat menginstal paket software tambahan di instance mesin virtual tetapi penginstalan tidak akan tetap ada setelah instance dihentikan kecuali jika Anda menginstal software di direktori $HOME atau membuat lingkungan kustom.

Dukungan bahasa

Instance mesin virtual Cloud Shell menyediakan dukungan bahasa yang telah diinstal untuk hal berikut:

Bahasa Versi
Java JRE/JDK 17 (OpenJDK)
Go Terbaru
Python 3.12
Node.js LTS
Ruby 3.2
PHP 8.3
.NET Core SDK 6.0, 7.0, dan 8.0

Versi default lingkungan Java adalah 17. Untuk mengubah sesi Cloud Shell saat ini agar menggunakan JRE dan JDK versi 1.11, masukkan perintah berikut di command prompt Cloud Shell:

sudo update-java-alternatives -s java-1.11.0-openjdk-amd64 && export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64

Untuk mengubah ke 21:

sudo update-java-alternatives -s java-1.21.0-openjdk-amd64 && export JAVA_HOME=/usr/lib/jvm/java-21-openjdk-amd64

Untuk mengubah kembali ke 17:

sudo update-java-alternatives -s java-1.17.0-openjdk-amd64 && export JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64/jre

Mode aman

Jika ada masalah dalam file .bashrc atau .tmux.conf, Cloud Shell akan segera ditutup setelah koneksi. Mode aman akan memulai ulang instance Cloud Shell dan Anda akan login sebagai pengguna root, sehingga Anda dapat memperbaiki masalah apa pun dalam file.

Untuk membuka Cloud Shell dalam mode aman:

  • Tambahkan cloudshellsafemode=true ke URL.
  • Di Cloud Shell, klik , klik Safe Mode, lalu klik Restart.

Untuk menghapus semua file di direktori beranda secara permanen dan memulihkan direktori beranda Cloud Shell ke status bersih, Anda dapat mereset VM Cloud Shell.