Skip to Content
Guides개발 워크스테이션

개발 워크스테이션

이 가이드는 보수적인 도구 세트와 명시적인 스모크 테스트를 통해 Ubuntu 24.04 GNOME 워크스테이션을 구축합니다. 언어 및 편집기 버전은 다른 소스를 고정하고 검토하지 않는 한 선택한 패키지 소스를 따릅니다.

프롬프트

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.

레시피를 검토해 보세요

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

Ubuntu 24.04에서 각 기능이 예상대로 확장되는지 확인하세요. docker 그룹 멤버십은 Docker 데몬을 제어할 수 있기 때문에 일반적으로 루트와 동일합니다. 사용자에게 해당 권한이 없어야 하는 경우 이를 제거하십시오.

버전 및 소스

제어되는 워크스테이션에서 “최신”을 요구하지 마십시오. 선택한 스냅샷에서 실제로 사용 가능한 버전을 기록하고 해당 버전을 테스트합니다. 공급업체 저장소 또는 부트스트랩 설치 프로그램은 별도의 신뢰 루트 및 업데이트 수명 주기를 추가합니다. 키, 저장소 메타데이터, 용어 및 롤백 동작을 검토한 후에만 사용하세요.

Rustup, 언어 버전 관리자, 편집기 확장, 컨테이너 이미지와 같은 도구는 이미지가 빌드된 후 움직이는 코드를 다운로드할 수 있습니다. 워크스테이션 기준에 중요한 경우 해당 항목을 고정하고 증거 패킷에 출처를 포함합니다.

검증 시나리오

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

실제로 설치하는 모든 그래픽 편집기에 대해 GUI 어설션을 추가하십시오. 패키지 검사에서는 손상된 첫 번째 실행, 라이센스 대화 상자, 디스플레이 통합 누락 또는 잘못된 기본 데스크탑을 감지할 수 없습니다.

마지막으로 승인된 등록 또는 SSH 키 경로를 사용하여 로그인을 테스트합니다. 레시피에는 의도적으로 비밀번호가 포함되어 있지 않습니다.