Arendustööjaam
See juhend loob Ubuntu 24.04 GNOME tööjaama konservatiivse tööriistakomplekti ja selgete suitsutestidega. Keele ja redaktori versioonid järgivad valitud paketiallikaid, välja arvatud juhul, kui kinnitate ja vaatate üle teise allika.
Prompt
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.Vaadake retsept üle
{
"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"
}
}
}
}Kinnitage, et iga funktsioon laieneb Ubuntu 24.04 peale ootuspäraselt. docker grupi liikmesus on sageli root-õigustele võrdne, sest selle abil saab juhtida Dockeri deemonit; eemaldage see, kui kasutajal ei tohiks olla seda volitust.
Versioonid ja allikad
Kontrollitud tööjaamas ärge küsige „latest“. Fikseerige valitud hetktõmmisest tegelikult saadaolevad versioonid ja testige neid versioone. Tarnija hoidla või algse installeri lisamine toob kaasa eraldi usaldusjuure ja uuendustsükli; kasutage seda alles pärast võtme, hoidla metaandmete, tingimuste ja tagasipööramise käitumise ülevaatamist.
Tööriistad nagu Rustup, keeleversioonihaldurid, redaktori laiendused ja konteineri pildid võivad pärast pildi ehitamist alla laadida muutuvat koodi. Kui need on tööjaama baasjoone jaoks olulised, kinnitage need ja lisage nende päritolu tõendite paketti.
Kontrollstsenaarium
{
"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"}
}
]
}
]
}Lisage GUI väide iga graafilise redaktori kohta, mida te tegelikult paigaldate. Paketi kontroll ei tuvasta katki esimest käivitust, litsentsidialoogi, puuduvat ekraani integratsiooni ega vale vaikimisi töölauda.
Lõpuks testige sisselogimist heakskiidetud registreerimise või SSH-võtme teega; retsept ei sisalda tahtlikult parooli.