Image dasar yang telah dikonfigurasi sebelumnya

Google Cloud mengelola image dasar berikut yang dirancang untuk digunakan dengan Cloud Workstation.

Daftar image dasar yang telah dikonfigurasi sebelumnya

Image ini dapat digunakan langsung dalam konfigurasi workstation, atau dapat digunakan sebagai image dasar saat membuat image container kustom dengan perintah FROM Docker.

Image Deskripsi
us-central1-docker.pkg.dev/cloud-workstations-images/predefined/code-oss:latest Editor dasar Cloud Workstations, Code OSS untuk Cloud Workstations, berdasarkan Code-OSS. (Default)
us-central1-docker.pkg.dev/cloud-workstations-images/predefined/base:latest Image dasar tanpa IDE yang diinstal.
us-central1-docker.pkg.dev/cloud-workstations-images/predefined/clion:latest IDE CLion. Hanya dapat diakses melalui JetBrains Gateway.
Untuk informasi penginstalan dan memulai, lihat Mengembangkan kode menggunakan IDE JetBrains lokal.
us-central1-docker.pkg.dev/cloud-workstations-images/predefined/goland:latest IDE GoLand. Hanya dapat diakses melalui JetBrains Gateway.
Untuk informasi penginstalan dan memulai, lihat Mengembangkan kode menggunakan IDE JetBrains lokal.
us-central1-docker.pkg.dev/cloud-workstations-images/predefined/intellij-ultimate:latest IDE IntelliJ IDEA Ultimate. Hanya dapat diakses melalui JetBrains Gateway.
Untuk informasi penginstalan dan memulai, lihat Mengembangkan kode menggunakan IDE JetBrains lokal.
us-central1-docker.pkg.dev/cloud-workstations-images/predefined/phpstorm:latest IDE PhpStorm. Hanya dapat diakses melalui JetBrains Gateway.
Untuk informasi penginstalan dan memulai, lihat Mengembangkan kode menggunakan IDE JetBrains lokal.
us-central1-docker.pkg.dev/cloud-workstations-images/predefined/pycharm:latest IDE PyCharm Professional. Hanya dapat diakses melalui JetBrains Gateway.
Untuk informasi penginstalan dan memulai, lihat Mengembangkan kode menggunakan IDE JetBrains lokal.
us-central1-docker.pkg.dev/cloud-workstations-images/predefined/rider:latest Rider IDE. Hanya dapat diakses melalui JetBrains Gateway.
Untuk informasi penginstalan dan memulai, lihat Mengembangkan kode menggunakan IDE JetBrains lokal.
us-central1-docker.pkg.dev/cloud-workstations-images/predefined/rubymine:latest IDE RubyMine. Hanya dapat diakses melalui JetBrains Gateway.
Untuk informasi penginstalan dan memulai, lihat Mengembangkan kode menggunakan IDE JetBrains lokal.
us-central1-docker.pkg.dev/cloud-workstations-images/predefined/webstorm:latest IDE WebStorm. Hanya dapat diakses melalui JetBrains Gateway.
Untuk informasi penginstalan dan memulai, lihat Mengembangkan kode menggunakan IDE JetBrains lokal.

Daftar image dasar pihak ketiga

Gambar pihak ketiga Penyedia pihak ketiga
us-central1-docker.pkg.dev/posit-images/cloud-workstations/workbench:latest Posit Workbench (termasuk RStudio Pro)

Jika Anda mengalami masalah dengan IDE Posit Workbench atau dengan image penampung Posit Workbench, laporkan ke Posit di GitHub.

Struktur image dasar Cloud Workstations

Image dasar Cloud Workstations memiliki struktur yang ditentukan berikut:

  • File titik entri image dasar ditetapkan ke /google/scripts/entrypoint.sh.
  • Saat memulai, image dasar menjalankan file di /etc/workstation-startup.d/* dalam urutan leksikografis untuk melakukan inisialisasi lingkungan workstation.

    File dan perilakunya adalah sebagai berikut:

    • 000_configure-docker.sh: Mengonfigurasi dan menjalankan Docker di dalam workstation.
    • 010_add-user.sh: Membuat pengguna default di Cloud Workstations.

      Karena persistent disk dilampirkan secara dinamis ke penampung, pengguna harus ditambahkan saat workstation dimulai, bukan di Dockerfile.

    • 020_start-sshd.sh: Memulai layanan sshd di penampung.

    • 110_start-$IDE.sh: Memulai IDE untuk image.

  • Cloud Workstations menyimpan image Docker di direktori beranda di /home/.docker_data sehingga image dipertahankan di antara sesi.

Untuk menambahkan fungsi tambahan selama startup workstation, tambahkan skrip Anda di direktori /etc/workstation-startup.d/:

  • Skrip di direktori ini berjalan sebagai root secara default. Untuk menjalankan skrip sebagai pengguna lain, gunakan perintah runuser.

  • Karena skrip dijalankan dalam urutan leksikografis, sebaiknya Anda menambahkan awalan pada skrip dengan angka tiga digit yang lebih besar dari 200.

Modifikasi direktori utama

Jika konfigurasi workstation menentukan direktori utama persisten (yang merupakan perilaku default), persistent disk yang mendukung direktori utama akan dilampirkan secara dinamis ke penampung saat runtime. Proses ini menimpa perubahan yang dilakukan pada direktori /home pada waktu build image container.

Untuk mempertahankan update, ubah direktori /home pada runtime penampung dengan menambahkan skrip di direktori /etc/workstation-startup.d, atau dengan menambahkan konfigurasi per pengguna di direktori /etc/profile.d. Untuk mempercepat proses, pertimbangkan untuk menjalankan skrip penyiapan sebagai proses latar belakang (tambahkan ampersand, &, ke akhir perintah) untuk menghindari pemblokiran startup penampung.

Beberapa contoh konfigurasi waktu build yang harus dipindahkan ke runtime penampung:

  • Konfigurasi git per pengguna
  • Repositori git yang di-clone di direktori beranda
  • Konfigurasi pengguna langsung, seperti menempatkan file di direktori $HOME/.config
  • Pengguna dibuat

Pembuatan dan perubahan pengguna

Karena disk persisten secara dinamis dilampirkan ke penampung saat runtime, pengguna harus ditambahkan saat workstation dimulai, bukan di Dockerfile. Untuk mengubah atau membuat pengguna tambahan, sebaiknya perbarui /etc/workstation-startup.d/010_add-user.sh, atau buat skrip Anda sendiri yang dijalankan saat startup.

Selain itu, Anda dapat mengubah profil bash default untuk pengguna dengan mengupdate file di /etc/profile.d.

Mengupdate kunci APT Aman yang telah dikonfigurasi sebelumnya

Image dasar Cloud Workstations sudah diinstal sebelumnya dengan sejumlah alat yang diperoleh dari berbagai repositori pihak ketiga menggunakan Secure APT. Sebagai bagian dari proses penginstalan, kunci publik yang disediakan oleh pemilik repositori diimpor menggunakan gpg dan ditempatkan ke dalam setiap file di bagian /usr/share/keyrings/. File ini dirujuk dari file list yang sesuai di bagian /etc/apt/sources.list.d/. Hal ini memungkinkan apt memverifikasi integritas repositori tertentu saat berinteraksi dengannya.

Terkadang, pemilik repositori pihak ketiga dapat memutuskan untuk mengubah kunci publik yang digunakan untuk memvalidasi integritas repositori mereka, yang menyebabkan apt menampilkan error saat berinteraksi dengannya. Untuk mengatasi potensi masalah ini, Anda dapat menggunakan /google/scripts/refresh-preinstalled-apt-keys.sh, yang mendapatkan kunci publik bawaan versi terbaru dan mengimpornya kembali.

Mencantumkan versi IDE yang diinstal

Beberapa image dasar Cloud Workstations sudah diinstal sebelumnya dengan IDE. Untuk memudahkan, lihat skrip /google/scripts/preinstalled-ide-versions.sh yang disertakan, yang mencantumkan informasi nama dan versi IDE yang diinstal di image.

Menonaktifkan hak istimewa root sudo

Pengguna workstation default memiliki hak istimewa akses root sudo di penampung ini. Untuk menonaktifkan akses root ke penampung Docker, tetapkan variabel lingkungan CLOUD_WORKSTATIONS_CONFIG_DISABLE_SUDO ke true saat membuat konfigurasi workstation.

Untuk menetapkan variabel lingkungan ini melalui konsol Google Cloud saat membuat konfigurasi workstation, ikuti langkah-langkah berikut:

  1. Saat membuat konfigurasi workstation, selesaikan konfigurasi untuk Informasi dasar dan Konfigurasi mesin.
  2. Pada dialog Environment customization, luaskan bagian Advanced container options dan pilih Environment variables.
  3. Klik tambahkanTambahkan variabel.
  4. Masukkan CLOUD_WORKSTATIONS_CONFIG_DISABLE_SUDO dan true sebagai nilai.

Langkah selanjutnya