
Show HN: Davit, Apple 컨테이너 UI
요약
Davit는 Apple의 XPC를 통해 컨테이너 데몬과 직접 통신하는 SwiftUI 기반의 네이티브 macOS 컨테이너 UI 도구입니다. Electron 없이 실시간 리소스 모니터링, 로그 스트리밍, 대화형 셸 연결 등 강력한 컨테이너 관리 기능을 제공합니다.
핵심 포인트
- XPC를 통한 네이티브 통신으로 Electron 없이 가볍고 빠름
- 실시간 CPU, 메모리, IP 및 로그 스트리밍 지원
- SwiftUI 기반의 메뉴 바 및 Dock 아이콘 인터페이스
- 관리자 권한 없이 Apple의 설치 프로그램을 통한 간편한 설정 가능
Davit는 CLI가 사용하는 것과 동일한 통신 경로인 XPC를 통해 Apple의 오픈 소스 컨테이너 데몬(daemon)과 직접 통신합니다. Electron, 웹 뷰(web views), 또는 별도의 백그라운드 에이전트(background agents)를 사용하지 않습니다.
모든 행에서 실시간 CPU, 메모리 및 IP를 확인하며 컨테이너를 시작, 중지, 재시작 및 삭제할 수 있습니다. follow 및 boot 모드를 지원하는 스트리밍 로그(Streaming logs), 실시간 상태 차트(live stat charts), 그리고 원시 설정 검사(raw config inspection) 기능을 제공합니다.
실행 중인 모든 컨테이너에서 대화형 셸(interactive shell)을 열어 Terminal 또는 iTerm으로 바로 연결할 수 있습니다. 이는 네이티브 API를 통해 이루어지므로 CLI가 필요하지 않습니다.
컨테이너는 불변(immutable)이므로, Davit는 기존 설정에서 이미지의 entrypoint와 환경 변수(env)를 제외한 채 새 컨테이너를 미리 채워줍니다. 이를 통해 포트, 환경 변수, 마운트(mounts) 또는 리소스를 몇 초 만에 변경할 수 있습니다.
실시간 진행 상황과 함께 Pull을 수행하고, 어떤 이미지, 태그로부터든 run, prune을 할 수 있습니다. 크기가 지정된 볼륨(volumes)과 커스텀 서브넷(subnets)을 생성하세요. 삭제하기 전에 무엇이 사용 중인지 확인할 수 있습니다.
새 컨테이너, 레지스트리(registry), DNS, 빌더 리소스(builder resources)에 대한 기본 CPU/메모리 설정은 앱 내에서 편집할 수 있으며, 플랫폼 자체의 설정 로더(config loader)에 의해 검증된 후 깔끔한 TOML 오버라이드(overrides)로 저장됩니다.
컨테이너 플랫폼이 설치되어 있지 않나요? Davit는 Apple의 서명된 설치 프로그램을 다운로드하고 검증한 뒤, 사용자의 Library에 모든 것을 설정합니다. 관리자 권한(administrator rights)이 필요하지 않습니다. 또한 셸에 container CLI를 추가할 수도 있습니다.
전체적으로 SwiftUI로 구축되었습니다. 메뉴 바(Menu bar) 빠른 작업, 원할 때만 나타나는 Dock 아이콘, 그리고 렌더링을 위해 브라우저를 실행할 필요가 없는 실시간 차트를 제공합니다.
AI 자동 생성 콘텐츠
본 콘텐츠는 HN AI Posts의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기