Skip to Content
GuidesWorkstation di sviluppo

Workstation di sviluppo

Questa guida builda una workstation GNOME Ubuntu 24.04 con un set strumenti conservativo e smoke test espliciti. Versioni linguaggio ed editor seguono le sorgenti pacchetto selezionate salvo pin e revisione di un’altra sorgente.

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.

Rivedi la ricetta

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

Conferma che ogni feature si espanda su Ubuntu 24.04 come atteso. Appartenenza gruppo docker è comunemente equivalente root perché può controllare il daemon Docker; rimuovila se l’utente non deve avere quell’autorità.

Versioni e sorgenti

Non chiedere «latest» in una workstation controllata. Registra le versioni disponibili dallo snapshot selezionato e testa quelle versioni. Un repository vendor o installer bootstrap aggiunge una root fiducia e un ciclo aggiornamento separati; usalo solo dopo revisione chiave, metadati repository, termini e comportamento rollback.

Strumenti come Rustup, version manager linguaggio, estensioni editor e immagini container possono scaricare codice mobile dopo la build immagine. Se contano per la baseline workstation, pin e includi provenienza nel pacchetto evidenza.

Scenario verifica

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

Aggiungi un’asserzione GUI per ogni editor grafico che installi davvero. Un controllo pacchetto non rileva un primo avvio rotto, dialog licenza, integrazione display mancante o desktop default sbagliato.

Infine, testa login con percorso enrollment o chiave SSH approvato; la ricetta non contiene intenzionalmente password.