Microsoft Dev Box özelleştirmeleri

Geliştiricileri yeni bir projeye veya yeni bir ekiple kullanmaya başlamak genellikle karmaşıktır ve zaman alır. Microsoft Dev Box özelleştirmeleri özelliği, geliştirici ortamının kurulumunu kolaylaştırmanıza yardımcı olur. Özelleştirmelerle, gerekli uygulamalar, araçlar, depolar, kod kitaplıkları, paketler ve derleme betikleriyle koda hazır iş istasyonları yapılandırabilirsiniz.

Dev Box özelleştirmeleri aşağıdakileri gerçekleştirmenizi sağlar:

  • Gerekli araçları ve uygulamaları yükleyin.
  • Kuruluş güvenlik ilkelerini zorunlu kılma.
  • Geliştirme kutuları arasında tutarlılık sağlayın.

Dev Box özelleştirmeleri kullanmanın iki yolunu sunar:

  • Ekip özelleştirmeleri: Ekipleriniz için birden çok standart veya altın resim oluşturmak yerine bir geliştirici ekibi için standart paylaşılan yapılandırma oluşturmak için kullanılır.
  • Kullanıcı özelleştirmeleri: Geliştiriciler tarafından kişisel tercihlerine yönelik yapılandırmalar oluşturmak için kullanılır. Kullanıcı özelleştirmeleri sayesinde geliştiriciler yapılandırmalarını dosyalarda depolayabilir ve geliştirme kutuları oluştururken bunları çalıştırabilir. Özelleştirmeler tüm geliştirme kutularında tutarlılık sağlar.

Doğru özelleştirme türünü seçin

Şunu yapmak istiyorsanız... Kullan
Tüm ekibiniz için araçları standartlaştırma Ekip özelleştirmeleri
Geliştirme kutunuza kişisel tercihler uygulama Kullanıcı özelleştirmeleri
Geliştirme kutuları arasında güvenlik ilkelerini zorunlu kılma Ekip özelleştirmeleri
Yönetici onayı gerektiren yazılımları yükleme Ekip özelleştirmeleri
Kişisel araçları yükleme (yalnızca onaylı görevler) Kullanıcı özelleştirmeleri

Özelleştirme dosyası nedir?

Geliştirme Kutusu özelleştirmeleri, geliştiriciler geliştirme kutusu oluştururken geliştirme merkezinden veya katalogdan uygulanacak görevlerin listesini belirtmek için YAML biçimli bir dosya kullanır. Bu görevler katalog görevini tanımlar ve yüklenecek yazılımın adı gibi parametreler sağlar. Geliştiriciler kendi özelleştirme dosyalarını oluşturabilir veya paylaşılan bir özelleştirme dosyası kullanabilir.

Özel depoları kopyalamak için özelleştirme dosyanızda Azure anahtar kasanızdaki sırları kullanabilirsiniz. Bunları, erişim belirteci gerektiren, kendi oluşturduğunuz herhangi bir özel görevle de kullanabilirsiniz.

Görevler nedir?

Dev Box özelleştirme görevleri, PowerShell betikleri için sarmalayıcılardır. Bunları, ekiplerinizin özelleştirmelerinde kullanabileceği yeniden kullanılabilir bileşenleri tanımlamak için kullanırsınız. WinGet ve PowerShell görevleri platform üzerinden kullanılabilir. Katalog aracılığıyla yenilerini ekleyebilirsiniz. Görevler, oturum açma sonrasında sistem bağlamında veya kullanıcı bağlamında çalıştırılabilir.

  • Proje yöneticileri, hem özel hem de yerleşik görevleri kullanabilen takım özelleştirmelerini tanımlar.
  • Kullanıcı özelleştirmeleri, sistem görevlerini yalnızca kullanıcı yöneticiyse veya görevler bir katalog aracılığıyla önceden onaylanan özel görevlerse kullanabilir. Standart geliştirme kutusu kullanıcıları, sistem bağlamında yerleşik PowerShell ve WinGet görevlerini çalıştıramaz ve bu da ayrıcalık yükseltmesini önler.

Görevler oluşturduğunuzda, sistem bağlamında hangilerinin çalıştırılması gerektiğini ve oturum açmadan sonra hangilerinin kullanıcı bağlamında çalışabileceğini belirleyin.

Görüntü tanımı dosyanızda hem sistem hem de kullanıcı görevlerini kullanabilirsiniz. Görüntü tanımı dosyasının görevler bölümü, kataloğunuzdaki görev tanımlarına göre aynı parametreleri paylaşan sistem görevleri ve kullanıcı görevleri bölümlerine ayrılır.

  • Sistem görevleri: Bu görevler geliştirme kutusunun sağlama aşamasında olduğu gibi LocalSystem çalışır. Bunlar genellikle yazılım yükleme veya yönetim ayrıcalıkları gerektiren sistem ayarlarını yapılandırma gibi sistem düzeyinde yapılandırmalar için kullanılır.
  • Kullanıcı görevleri: Bu görevler, kullanıcının geliştirme kutusunda ilk kez oturum açmasının ardından kullanıcı olarak çalışır. Bunlar genellikle kullanıcıya özgü uygulamaları yükleme veya kullanıcı bağlamı altında kullanıcı ayarlarını yapılandırma gibi kullanıcı düzeyinde yapılandırmalar için kullanılır. Örneğin, kullanıcılar genellikle sistem genelinde değil kullanıcı bağlamı altında Python ve Visual Studio Code'u yüklemeyi tercih eder. Görevlerin userTasks altında çalışmadığında daha iyi sonuçlar elde için WinGet görevlerini bölümüne yerleştirin.

Kullanıcı özelleştirmelerini ayarlayan standart kullanıcılar yalnızca kullanıcı görevlerini kullanabilir. Sistem görevlerini kullanamazlar.

Özelleştirme izinleri

Farklı eylemler farklı roller ve izinler gerektirir. Aşağıdaki tabloda, yaygın özelleştirme senaryoları için ihtiyacınız olan şeyler gösterilmektedir.

Eylem İzin veya rol
Geliştirme merkezi için proje düzeyinde katalogları etkinleştirme Abonelik üzerinde yazma erişimine sahip platform mühendisi
Proje için katalog eşitleme ayarlarını etkinleştirme Abonelikte yazma erişimi olan platform mühendisi
Projeye katalog ekleme Projede Proje Yöneticisi veya Katkıda Bulunan izinleri
Özelleştirme dosyası oluşturma Belirtilmemiş (herkes dosya oluşturabilir)
Geliştirme kutusu oluşturulurken bir YAML dosyası yükleyin ve uygulayın. Geliştirme Kutusu Kullanıcısı
Kataloğa görev ekleme Kataloğu barındıran depoya ekleme izni
Geliştirme kutusu havuzunu oluştur, sil veya güncelleştir Azure aboneliği, DevCenter Sahibi veya DevCenter Proje Yöneticisi üzerinde Sahip veya Katkıda Bulunan izinleri

Ekip özelleştirmeleri ile kullanıcı özelleştirmeleri arasındaki farklar

Dev Box ekip özelleştirmeleri, geliştirici ekibi liderlerinin ve BT yöneticilerinin geliştirme kutusu havuzları için özelleştirme dosyalarını önceden yapılandırmasına olanak sağlar. Özelleştirmeler, geliştiricilerin el ile kurulum gerçekleştirme gereksinimini ortadan kaldırır.

Bir ekibin Dev Box dağıtımlarını güvenli hale getirmek ve standart hale getirmek için takım özelleştirmelerini kullanmanızı öneririz. Geliştirici ekipleri arasında ortak YAML dosyalarının paylaşılması verimsiz olabilir, hatalara yol açabilir ve uyumluluk ilkelerini ihlal edebilir.

Ekip özelleştirmelerine ek olarak, tek tek geliştiriciler geliştirme ortamını denetlemek için geliştirme kutusunu oluşturduklarında bir özelleştirme dosyası yükleyebilir. Geliştiriciler yalnızca kişisel ayarlar ve uygulamalar için bireysel özelleştirmeleri kullanmalıdır.

Özelleştirmeler nasıl çalışır?

Ekip özelleştirmeleri ve kullanıcı özelleştirmeleri, geliştirme kutusu oluşturduğunuzda uygulanacak görevlerin listesini belirten YAML tabanlı dosyalardır. Her özelleştirme türünün nasıl çalıştığı hakkında daha fazla bilgi edinmek için uygun sekmeyi seçin.

Ekip özelleştirmeleri nasıl çalışır?

Packer veya Azure sanal makine (VM) görüntü şablonları gibi bir görüntüleme çözümü ayarlamaya yatırım yapmak zorunda kalmadan geliştirme ekiplerinizin her biri için paylaşılan bir Dev Box yapılandırması tanımlamak için ekip özelleştirmelerini kullanabilirsiniz. Ekip özelleştirmeleri, merkezi platform mühendislik ekiplerinin Dev Box yapılandırma yönetimini kullanan ekiplere devretmesine olanak tanıyan basit bir alternatif sağlar.

Ekip özelleştirmeleri ayrıca ekibinizin Dev Box özelleştirmelerini özel bir görüntüde düzleştirerek iyileştirmenin yerleşik bir yolunu sunar. Eklenen altyapıyı yönetmeye veya görüntü şablonlarını korumaya gerek kalmadan aynı özelleştirme dosyasını kullanırsınız.

Kuruluşunuz için Dev Box ekip özelleştirmelerini yapılandırmak için dikkatli planlama ve bilinçli karar alma gerekir. Aşağıdaki diyagramda işleme genel bir bakış sağlanır ve önemli karar noktaları vurgulanır.

Özelleştirmeleri planlama, yapılandırma ve dağıtma adımları da dahil olmak üzere Dev Box ekip özelleştirmeleri için iş akışını gösteren diyagram.

Ekip özelleştirmeleri şu üst düzey adımları içerir:

  1. Geliştirme merkezinizi yapılandırın ve proje düzeyinde katalogları etkinleştirin.
  2. Yerleşik görevleri (WinGet, PowerShell, Git-Clone) kullanmaya veya bir katalogda özel görevler oluşturmaya karar verin.
  3. Çalıştırılacak görevleri belirten bir görüntü tanım dosyası (imagedefinition.yaml) oluşturun.
  4. Kataloğu projenize ekleyin ve görüntü tanımını kullanmak için bir geliştirme kutusu havuzu yapılandırın.
  5. İsteğe bağlı olarak, geliştirme kutusu oluşturma süresini iyileştirmek için yeniden kullanılabilir bir görüntü oluşturun.

Daha fazla bilgi edinmek için bkz. Ekip özelleştirmelerini yapılandırma ve Geliştirme merkezi görüntülemeyi yapılandırma.