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 아이콘, 그리고 렌더링을 위해 브라우저를 실행할 필요가 없는 실시간 차트를 제공합니다.