Skip to Content
GuidesUdviklingsarbejdsstation

Udviklingsarbejdsstation

Denne guide bygger en Ubuntu 24.04 GNOME-arbejdsstation med et konservativt værktøjssæt og eksplicitte smoke tests. Sprog- og editorversioner følger de valgte pakkekilder, medmindre du fastlåser og gennemgår en anden kilde.

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.

Gennemgå opskriften

{ "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" } } } }

Bekræft at hver feature udvider sig på Ubuntu 24.04 som forventet. Medlemskab af gruppen docker er ofte root-ækvivalent, fordi det kan styre Docker-daemonen; fjern det, hvis brugeren ikke skal have den autoritet.

Versioner og kilder

Bed ikke om «latest» på en kontrolleret arbejdsstation. Notér de versioner, der faktisk findes i det valgte snapshot, og test disse versioner. Et vendor-repository eller bootstrap-installer tilføjer en separat trust root og opdateringslivscyklus; brug det først efter gennemgang af nøgle, repository-metadata, vilkår og rollback-adfærd.

Værktøjer som Rustup, sprogversionsmanagere, editorudvidelser og containerimages kan hente bevægelig kode efter at imagen er bygget. Hvis de betyder noget for arbejdsstationens baseline, fastlås dem og medtag deres proveniens i evidence packet.

Verifikationsscenario

{ "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"} } ] } ] }

Tilføj en GUI-assertion for hver grafisk editor, du faktisk installerer. Et pakketjek opdager ikke en ødelagt første start, licensdialog, manglende displayintegration eller forkert standarddesktop.

Test til sidst login med den godkendte enrollment- eller SSH-nøglevej; opskriften indeholder bevidst ingen adgangskode.