Geliştirme iş istasyonu
Bu kılavuz, muhafazakar bir araç seti ve açık duman testleri içeren bir Ubuntu 24.04 GNOME iş istasyonu oluşturur. Başka bir kaynağı sabitleyip incelemediğiniz sürece dil ve editör sürümleri seçilen paket kaynaklarını takip eder.
İstemi
Create an Ubuntu 24.04 GNOME development workstation with a dark color
scheme, SSH, Docker, Git, Python, Node.js, curl, jq, tmux, htop, and Neovim.
Create a locked-password user named dev with sudo and Docker group intent.
Do not add third-party repositories unless their HTTPS URL, signing key,
release support, and license are explicit. Add tests for the desktop session,
tool versions, Docker service, group membership, and one container smoke test.Tarifi gözden geçirin
{
"name": "ubuntu24-development-workstation",
"base_image": "ubuntu-24.04",
"os": {
"features": ["desktop", "ssh", "docker", "git", "python", "nodejs"],
"packages": ["curl", "jq", "tmux", "htop", "neovim"],
"users": [
{
"username": "dev",
"groups": ["sudo", "docker"],
"shell": "/bin/bash"
}
],
"desktop_settings": {
"color_scheme": "prefer-dark",
"fonts": {
"monospace_font": "Ubuntu Mono 13"
},
"power": {
"idle_delay": 600,
"sleep_inactive_ac_timeout": 0,
"sleep_inactive_ac_type": "nothing"
}
}
}
}Her özelliğin Ubuntu 24.04’te beklendiği gibi genişlediğini doğrulayın. docker grup üyeliği genellikle kök eşdeğeridir çünkü Docker arka plan programını kontrol edebilir; Kullanıcının bu yetkiye sahip olmaması gerekiyorsa onu kaldırın.
Sürümler ve kaynaklar
Kontrollü bir iş istasyonunda “en son” bilgisini sormayın. Seçilen anlık görüntüde gerçekten mevcut olan sürümleri kaydedin ve bu sürümleri test edin. Satıcı deposu veya önyükleme yükleyicisi ayrı bir güven kökü ve güncelleme yaşam döngüsü ekler; bunu yalnızca anahtarını, depo meta verilerini, koşullarını ve geri alma davranışını inceledikten sonra kullanın.
Rustup, dil sürümü yöneticileri, düzenleyici uzantıları ve kapsayıcı görseller gibi araçlar, görsel oluşturulduktan sonra hareketli kodu indirebilir. İş istasyonunun temel çizgisi açısından önemliyse bunları sabitleyin ve kökenlerini kanıt paketine ekleyin.
Doğrulama senaryosu
{
"id": "development-smoke",
"name": "Development workstation smoke test",
"enabled": true,
"tests": ["boot", "login", "packages", "services"],
"custom_tests": [
{
"description": "Confirm core tools and Docker are usable.",
"assertions": [
{
"type": "command_succeeds",
"description": "Python reports a version.",
"params": {"command": "python3 --version"}
},
{
"type": "command_succeeds",
"description": "Node.js reports a version.",
"params": {"command": "node --version"}
},
{
"type": "service_running",
"description": "The Docker daemon is running.",
"params": {"service": "docker"}
},
{
"type": "user_in_group",
"description": "The dev account has the reviewed Docker authority.",
"params": {"username": "dev", "group": "docker"}
}
]
}
]
}Gerçekte yüklediğiniz her grafik düzenleyici için bir GUI onayı ekleyin. Paket kontrolü, bozuk bir ilk başlatmayı, lisans iletişim kutusunu, eksik ekran entegrasyonunu veya yanlış varsayılan masaüstünü tespit edemez.
Son olarak, onaylanmış kayıt veya SSH anahtarı yoluyla oturum açmayı test edin; tarif kasıtlı olarak şifre içermiyor.