Présentation de Davit
Davit communique directement avec le démon de conteneur open-source d'Apple via XPC, le même chemin utilisé par l'interface en ligne de commande. Il n'utilise pas Electron, les vues web ou les agents en arrière-plan.
Fonctionnalités de Davit
Davit permet de démarrer, d'arrêter, de redémarrer et de supprimer des conteneurs avec des informations en temps réel sur la CPU, la mémoire et l'IP. Il prend en charge les journaux en streaming avec un mode de suivi et de démarrage, des graphiques de statistiques en temps réel et une inspection de configuration brute.
Il est possible d'ouvrir un shell interactif dans n'importe quel conteneur en cours d'exécution, directement dans Terminal ou iTerm, via l'API native, sans nécessiter l'interface en ligne de commande.
Architecture et sécurité
Les conteneurs étant immuables, Davit préremplit un nouveau conteneur à partir de l'ancienne configuration, en soustrayant le point d'entrée de l'image et les variables d'environnement, ce qui permet de modifier les ports, les variables d'environnement, les montages ou les ressources en quelques secondes.
Davit prend en charge le téléchargement d'images avec une progression en temps réel, l'exécution à partir de n'importe quelle image ou balise, et la suppression des conteneurs inutilisés.
Intégration et configuration
Davit est construit entièrement en SwiftUI et offre des actions rapides dans la barre de menu, une icône de Dock uniquement lorsque vous le souhaitez, et des graphiques en temps réel qui ne nécessitent pas de lancer un navigateur pour les afficher.
// Exemple de code pour démarrer un conteneur
// Pas d'exemple de code fourni, mais Davit utilise l'API native d'Apple pour interagir avec les conteneurs
Si aucune plate-forme de conteneur n'est installée, Davit télécharge l'installateur signé d'Apple, le vérifie et configure tout dans la bibliothèque de l'utilisateur, sans nécessiter de droits d'administrateur.