Bagikan melalui


Membuat kustomisasi kotak dev yang dapat digunakan kembali

Kustomisasi Microsoft Dev Box adalah pendekatan konfigurasi sebagai kode untuk menyesuaikan kotak dev. Dalam artikel ini, Anda mempelajari cara menyesuaikan kotak dev dengan menggunakan katalog tugas dan file konfigurasi untuk menginstal perangkat lunak, menambahkan ekstensi, mengkloning repositori, dan banyak lagi. Tugas-tugas ini diterapkan ke kotak dev baru di tahap akhir proses pembuatan. Anda dapat menambahkan pengaturan dan perangkat lunak tanpa harus membuat gambar komputer virtual (VM) kustom.

Kustomisasi berguna untuk tim pengembangan. Prospek tim pengembang dapat menggunakan penyesuaian untuk mengonfigurasi perangkat lunak yang diperlukan untuk tim pengembangan spesifik mereka, dan menulis file konfigurasi yang hanya menerapkan tugas yang relevan untuk tim mereka. Metode ini memungkinkan pengembang membuat dev box yang paling sesuai dengan pekerjaan mereka, tanpa perlu meminta perubahan kepada IT atau menunggu tim teknik membuat gambar VM kustom.

Dengan menggunakan kustomisasi, Anda dapat mengotomatiskan langkah-langkah penyiapan umum, menghemat waktu, dan mengurangi kemungkinan kesalahan konfigurasi. Beberapa contoh tugas meliputi:

  • Menginstal perangkat lunak dengan manajer paket WinGet.
  • Mengatur pengaturan OS seperti mengaktifkan Fitur Windows.
  • Mengonfigurasi aplikasi seperti menginstal ekstensi Visual Studio.

Anda dapat mengadopsi kustomisasi secara bertahap, membangun dari konfigurasi sederhana tetapi fungsi ke proses otomatis. Tahapannya adalah sebagai berikut:

  1. Membuat kotak dev yang dikustomisasi dengan menggunakan contoh file konfigurasi
  2. Menulis file konfigurasi
  3. Berbagi file konfigurasi dari repositori kode
  4. Menentukan tugas baru dalam katalog
  5. Menggunakan rahasia dari Azure Key Vault

Penting

Kustomisasi di Microsoft Dev Box saat ini dalam PRATINJAU. Lihat Ketentuan Penggunaan Tambahan untuk Pratinjau Microsoft Azure untuk persyaratan hukum yang berlaku pada fitur Azure dalam versi beta, pratinjau, atau belum dirilis secara umum.

Prasyarat

Membuat kotak dev yang dikustomisasi dengan menggunakan contoh file konfigurasi

Gunakan katalog mulai cepat default dan contoh file konfigurasi untuk memulai penyesuaian.

Melampirkan katalog mulai cepat

Melampirkan katalog dengan tugas kustomisasi ke pusat pengembangan berarti Anda dapat membuat kotak dev di pusat pengembangan tersebut dan mereferensikan tugas penyesuaian dari katalog tersebut. Microsoft menyediakan repositori sampel di GitHub dengan serangkaian tugas default standar untuk membantu Anda memulai, yang dikenal sebagai katalog mulai cepat.

Untuk melampirkan katalog mulai cepat ke pusat dev:

  1. Masuk ke portal pengembang Microsoft Dev Box.

  2. Di menu sebelah kiri di bawah Konfigurasi lingkungan, pilih Katalog, lalu pilih Tambahkan.

  3. Di Tambahkan katalog, pilih Tugas kustomisasi kotak Dev sebagai katalog mulai cepat. Kemudian, pilih Tambahkan.

  4. Di pusat pengembangan Anda, pilih Katalog, dan verifikasi bahwa katalog Anda muncul.

    Cuplikan layar portal Azure memperlihatkan panel Tambahkan katalog dengan katalog mulai cepat Microsoft dan tugas kustomisasi kotak Dev disorot.

    Jika koneksi berhasil, Status ditampilkan sebagai Sinkronisasi berhasil.

Membuat kotak dev yang dikustomisasi

Sekarang Anda memiliki katalog yang menentukan tugas yang dapat digunakan pengembang Anda. Anda dapat mereferensikan tugas tersebut dari file konfigurasi dan membuat kotak dev yang disesuaikan.

  1. Unduh contoh konfigurasi yaml dari repositori sampel. Contoh konfigurasi ini menginstal Visual Studio Code, dan mengkloning repositori aplikasi web OrchardCore .NET ke kotak dev Anda.

  2. Masuk ke portal pengembang Microsoft Dev Box.

  3. Pilih Kotak Dev Baru>.

  4. Di kotak Tambahkan dev, masukkan nilai berikut, lalu pilih Lanjutkan:

    Pengaturan Nilai
    Nama Masukkan nama untuk kotak dev Anda. Nama kotak dev harus unik dalam proyek.
    Proyek Pilih proyek dari daftar dropdown.
    Kumpulan kotak dev Pilih kumpulan dari daftar dropdown, yang mencakup semua kumpulan kotak dev untuk proyek tersebut. Pilih kumpulan kotak dev di dekat Anda untuk latensi paling sedikit.
    Menerapkan kustomisasi Pilih Terapkan kustomisasi.

    Cuplikan layar memperlihatkan opsi kustomisasi kotak dev di portal pengembang dengan File kustomisasi yang diunggah disorot.

  5. Pada halaman Kustomisasi kotak dev Anda, pilih Unggah file kustomisasi, lalu pilih Tambahkan kustomisasi dari file.

    Cuplikan layar memperlihatkan halaman Kustomisasi kotak dev Anda dengan Unggah file kustomisasi dan Tambahkan kustomisasi dari file yang disorot.

  6. Telusuri ke lokasi contoh file konfigurasi yaml yang Anda unduh, lalu pilih Buka.

  7. Periksa apakah file konfigurasi tercantum di bawah Unggah file kustomisasi, lalu pilih Validasi.

    Cuplikan layar memperlihatkan halaman Kustomisasi kotak dev Anda dengan file kustomisasi yang diunggah tercantum dan Validasi disorot.

  8. Setelah Dev Box memvalidasi file konfigurasi, pilih Lanjutkan.

    Cuplikan layar memperlihatkan pesan keberhasilan validasi tugas Kustomisasi, dan Lanjutkan disorot.

  9. Pada halaman ringkasan pembuatan kotak Dev, Dev Box menampilkan tugas yang akan diterapkannya. Pilih Buat.

    Cuplikan layar memperlihatkan halaman ringkasan pembuatan kotak Dev dengan tombol Buat disorot.

Setelah proses pembuatan selesai, kotak dev baru memiliki nodejs dan Visual Studio Code yang terinstal.

Untuk contoh selengkapnya, lihat repositori contoh pusat dev di GitHub.

Tip

Sebagai alternatif untuk portal pengembang, Anda dapat menggunakan Dev Home untuk membuat, menyesuaikan, dan menyambungkan ke kotak pengembangan Anda. Dev Home adalah aplikasi Windows asli yang menyediakan satu tempat untuk mengelola dev box Anda. Pelajari selengkapnya tentang Dev Home di Membuat kustomisasi dev box yang dapat digunakan kembali dengan Dev Home.

Apa itu file konfigurasi?

Kustomisasi Dev Box menggunakan file berformat yaml untuk menentukan daftar tugas yang akan diterapkan dari katalog saat membuat kotak dev baru. File konfigurasi ini mencakup satu atau beberapa 'tugas', yang mengidentifikasi tugas katalog dan menyediakan parameter seperti nama perangkat lunak yang akan diinstal. File konfigurasi kemudian tersedia untuk pengembang yang membuat dev box baru. Contoh berikut menggunakan tugas winget untuk menginstal Visual Studio Code, dan git clone tugas untuk mengkloning repositori.

# From https://github.com/microsoft/devcenter-examples
$schema: 1.0
tasks:
  - name: winget
    parameters:
      package: Microsoft.VisualStudioCode
      runAsUser: true
  - name: git-clone
    description: Clone this repository into C:\Workspaces
    parameters:
      repositoryUrl: https://github.com/OrchardCMS/OrchardCore.git
      directory: C:\Workspaces

Apa itu tugas?

Tugas melakukan tindakan tertentu, seperti menginstal perangkat lunak. Setiap tugas terdiri dari satu atau beberapa skrip PowerShell, bersama dengan file task.yaml yang menyediakan parameter dan menentukan cara skrip berjalan. Anda juga dapat menyertakan perintah PowerShell dalam file task.yaml. Anda dapat menyimpan kumpulan tugas yang dikumpulkan dalam katalog yang dilampirkan ke pusat pengembangan Anda, dengan setiap tugas di folder terpisah. Dev Box mendukung penggunaan repositori GitHub atau repositori Azure DevOps sebagai katalog, dan memindai folder tertentu dari katalog secara rekursif untuk menemukan definisi tugas.

Microsoft menyediakan katalog mulai cepat untuk membantu Anda memulai penyesuaian. Ini termasuk sekumpulan tugas default yang menentukan tugas umum:

  • Menginstal perangkat lunak dengan manajer paket WinGet.
  • Sebarkan konfigurasi status yang diinginkan (DSC) dengan menggunakan Konfigurasi WinGet.
  • Mengkloning repositori dengan menggunakan git-clone.
  • Mengonfigurasi aplikasi seperti menginstal ekstensi Visual Studio.
  • Menjalankan skrip PowerShell.

Kustomisasi kotak dev Anda dengan menggunakan file Konfigurasi WinGet yang ada

Konfigurasi WinGet mengambil pendekatan konfigurasi sebagai kode untuk menentukan set unik perangkat lunak dan pengaturan konfigurasi yang diperlukan untuk membuat lingkungan Windows Anda dalam status siap kode. File konfigurasi ini juga dapat digunakan untuk menyiapkan Dev Box, dengan menggunakan tugas WinGet yang disertakan dalam katalog mulai cepat yang disediakan Microsoft yang disebutkan sebelumnya.

Contoh berikut menunjukkan file kustomisasi kotak dev yang memanggil file WinGet DSC yang sudah ada.

tasks:
    - name: winget
      parameters:
          configure: "projectConfiguration.dsc.yaml"

Untuk mempelajari selengkapnya tentang Konfigurasi WinGet, lihat Konfigurasi WinGet.

Izin yang diperlukan untuk mengonfigurasi Microsoft Dev Box untuk kustomisasi

Untuk melakukan tindakan yang diperlukan untuk membuat dan menerapkan kustomisasi ke kotak dev, Anda memerlukan izin tertentu. Tabel berikut ini menjelaskan tindakan dan izin atau peran yang Anda butuhkan untuk mengonfigurasi kustomisasi.

Perbuatan Izin / Peran
Melampirkan katalog ke pusat pengembangan Insinyur platform dengan izin Kontributor ke pusat pengembangan.
Gunakan portal pengembang untuk mengunggah dan menerapkan file yaml selama pembuatan dev box Pengguna Dev Box
Membuat file konfigurasi Siapa pun dapat membuat file konfigurasi.
Menambahkan tugas ke katalog Izin untuk menambahkan ke repositori yang menghosting katalog.

Menulis file konfigurasi

Anda dapat menentukan tugas baru untuk diterapkan ke kotak dev Anda dengan membuat file konfigurasi Anda sendiri. Anda dapat menguji file konfigurasi di Visual Studio Code dan membuat perubahan yang diperlukan tanpa perlu membuat dev box terpisah untuk setiap pengujian.

Sebelum Anda dapat membuat dan menguji file konfigurasi Anda sendiri, harus ada katalog yang berisi tugas yang dilampirkan ke pusat pengembangan. Anda dapat menggunakan ekstensi Visual Studio Code untuk menemukan tugas di katalog terlampir.

  1. Buat Dev Box (atau gunakan Dev Box yang ada) untuk pengujian.

  2. Pada kotak dev pengujian, instal Visual Studio Code lalu instal ekstensi Dev Box v1.2.2 VS Code.

  3. Unduh contoh file konfigurasi yaml dari repositori sampel dan buka di Visual Studio Code.

  4. Temukan tugas yang tersedia di katalog dengan menggunakan palet perintah. Dari Tampilkan>Palet Perintah, pilih Dev Box: Cantumkan tugas yang tersedia untuk kotak dev ini.

    Cuplikan layar Visual Studio Code memperlihatkan palet perintah dengan tugas yang tersedia Dev Box List untuk kotak dev ini disorot.

  5. Uji konfigurasi di Visual Studio Code dengan menggunakan palet f5/command. Dari Tampilkan>Palet Perintah, pilih Dev Box: Terapkan tugas kustomisasi.

    Cuplikan layar Visual Studio Code memperlihatkan palet perintah dengan tugas Kustomisasi Dev Box Apply disorot.

  6. File konfigurasi segera berjalan, menerapkan tugas yang ditentukan ke kotak dev pengujian Anda. Periksa perubahan dan periksa terminal Visual Studio Code untuk setiap kesalahan atau peringatan yang dihasilkan selama eksekusi tugas.

  7. Saat file konfigurasi berhasil dijalankan, bagikan dengan pengembang untuk diunggah saat mereka membuat kotak dev baru.

Tip

Sebagai alternatif untuk Visual Studio Code, Anda dapat menggunakan Dev Home untuk membuat dan memvalidasi file konfigurasi di antarmuka pengguna grafis. Pelajari selengkapnya tentang Dev Home di Membuat kustomisasi dev box yang dapat digunakan kembali dengan Dev Home.

Catatan

Kemampuan untuk membuat dan mengunggah file bukanlah risiko keamanan; file yang diunggah hanya dapat menerapkan pengaturan yang ditentukan dalam katalog yang dilampirkan ke pusat pengembangan. Jika tugas tidak ditentukan di sana, pengembang akan mendapatkan kesalahan yang mengatakan tugas tidak ditentukan.

Berbagi file konfigurasi dari repositori kode

Jadikan file konfigurasi Anda tersedia dengan mulus untuk pengembang Anda dengan menamainya workload.yaml dan mengunggahnya ke repositori yang dapat diakses oleh pengembang, biasanya repositori pengkodian mereka. Saat membuat kotak dev, Anda menentukan URL repositori dan file konfigurasi dikloning bersama dengan repositori lainnya. Kotak dev mencari repositori untuk file bernama workload.yaml dan, jika ada, melakukan tugas yang tercantum. Konfigurasi ini menyediakan cara yang mulus untuk melakukan penyesuaian pada dev box.

  1. Buat file konfigurasi bernama workload.yaml.

  2. Tambahkan file konfigurasi ke akar repositori Azure Repos privat dengan kode Anda dan terapkan.

  3. Masuk ke portal pengembang Microsoft Dev Box.

  4. Pilih Kotak Dev Baru>.

  5. Di kotak Tambahkan dev, masukkan nilai berikut, lalu pilih Lanjutkan:

    Pengaturan Nilai
    Nama Masukkan nama untuk kotak dev Anda. Nama kotak dev harus unik dalam proyek.
    Proyek Pilih proyek dari daftar dropdown.
    Kumpulan kotak dev Pilih kumpulan dari daftar dropdown, yang mencakup semua kumpulan kotak dev untuk proyek tersebut. Pilih kumpulan kotak dev di dekat Anda untuk latensi paling sedikit.
    Menerapkan kustomisasi Pilih Terapkan kustomisasi.

    Cuplikan layar memperlihatkan opsi kustomisasi kotak dev di portal pengembang dengan File kustomisasi yang diunggah disorot.

  6. Pada halaman Kustomisasi kotak dev Anda, pilih Pilih file kustomisasi dari repositori, di URL repositori Azure DevOps, masukkan URL repositori yang menghosting file konfigurasi yang ingin Anda terapkan, lalu pilih Lanjutkan.

    Cuplikan layar memperlihatkan halaman Kustomisasi kotak dev Anda dengan Pilih file kustomisasi dari repositori dan URL repositori Azure DevOps.

  7. Pada halaman ringkasan pembuatan kotak Dev, Dev Box menampilkan tugas yang akan diterapkannya. Pilih Buat.

Setelah proses pembuatan selesai, kotak dev baru memiliki nodejs dan Visual Studio Code yang terinstal.

Kotak dev baru memiliki repositori yang dikloning, dan semua instruksi dari file konfigurasi diterapkan.

Menentukan tugas baru dalam katalog

Membuat tugas baru dalam katalog memungkinkan Anda membuat kustomisasi yang disesuaikan dengan tim pengembangan Anda dan menambahkan pagar pembatas di sekitar konfigurasi yang memungkinkan.

  1. Buat repositori untuk menyimpan tugas Anda.

    Secara opsional, Anda dapat membuat salinan katalog mulai cepat di repositori Anda sendiri untuk digunakan sebagai titik awal.

  2. Buat tugas di repositori Anda dengan memodifikasi skrip PowerShell yang sudah ada, atau membuat skrip baru.

    Untuk mulai membuat tugas, Anda dapat menggunakan contoh yang diberikan di repositori contoh pusat dev pada dokumentasi GitHub dan PowerShell.

  3. Lampirkan repositori Anda ke pusat pengembangan Anda sebagai katalog.

  4. Buat file konfigurasi untuk tugas tersebut dengan mengikuti langkah-langkah dalam Menulis file konfigurasi.

Menggunakan rahasia dari Azure Key Vault

Anda dapat menggunakan rahasia dari Azure Key Vault dalam konfigurasi yaml untuk mengkloning repositori privat, atau dengan tugas kustom apa pun yang Anda buat yang memerlukan token akses.

Untuk mengonfigurasi rahasia Key Vault untuk digunakan dalam konfigurasi yaml Anda,

  1. Pastikan identitas terkelola proyek pusat pengembangan Anda memiliki peran Pembaca Key Vault dan peran Pengguna Rahasia Key Vault di brankas kunci Anda.

  2. Berikan peran Pengguna Rahasia untuk rahasia Key Vault kepada setiap pengguna atau grup pengguna yang seharusnya dapat menggunakan rahasia selama penyesuaian kotak dev. Pengguna atau grup yang diberikan peran harus menyertakan identitas terkelola untuk pusat pengembangan, akun pengguna Anda sendiri, dan pengguna atau grup apa pun yang membutuhkan rahasia selama penyesuaian kotak dev.

Untuk informasi selengkapnya, lihat:

Anda dapat mereferensikan rahasia dalam konfigurasi yaml Anda dalam format berikut, menggunakan tugas git-clone sebagai contoh:

$schema: "1.0"
tasks:
   name: git-clone
   description: Clone this repository into C:\Workspaces
      parameters:
         repositoryUrl: https://myazdo.visualstudio.com/MyProject/_git/myrepo
         directory: C:\Workspaces
         pat: '{{KEY_VAULT_SECRET_URI}}'

Jika Anda ingin mengkloning repositori Azure DevOps privat (Azure Repos), Anda tidak perlu mengonfigurasi rahasia di Key Vault. Sebagai gantinya, Anda dapat menggunakan {{ado}}, atau {{ado://your-ado-organization-name}} sebagai parameter. Ini mengambil token akses atas nama Anda saat membuat kotak dev, yang memiliki izin baca-saja ke repositori Anda. Tugas git-clone di katalog mulai cepat menggunakan token akses untuk mengkloning repositori Anda. Berikut contohnya:

tasks:
   name: git-clone
   description: Clone this repository into C:\Workspaces
      parameters:
         repositoryUrl: https://myazdo.visualstudio.com/MyProject/_git/myrepo
         directory: C:\Workspaces
         pat: '{{ado://YOUR_ADO_ORG}}'

Jika kebijakan organisasi mengharuskan Anda untuk menjaga Key Vault Anda tetap privat dari internet, Anda dapat mengatur Key Vault untuk mengizinkan layanan Microsoft tepercaya melewati aturan firewall Anda.

Cuplikan layar memperlihatkan konfigurasi firewall Azure dengan Izinkan layanan Microsoft tepercaya melewati firewall ini dipilih.

Untuk mempelajari cara mengizinkan layanan Microsoft tepercaya melewati firewall, lihat Mengonfigurasi pengaturan jaringan Azure Key Vault.