Exécuter Cuttlefish localement dans des conteneurs avec podcvd

podcvd est un outil de ligne de commande qui exécute chaque groupe d'instances Cuttlefish dans son propre conteneur Podman sans racine. podcvd possède la même interface de ligne de commande que cvd. Vous pouvez donc exécuter podcvd create ou podcvd fleet comme vous le feriez pour cvd create ou cvd fleet.

Avantages de podcvd

Les avantages de podcvd sont décrits dans cette section.

Isolation entre les groupes d'instances

Avec cvd, tous les groupes d'instances d'un hôte partagent les mêmes ports réseau, sockets et état d'exécution. Avec podcvd, chaque groupe d'instances s'exécute dans un conteneur dédié. Les groupes ne peuvent donc pas entrer en conflit les uns avec les autres ni avec d'autres logiciels sur l'hôte.

Plusieurs clients sur un seul hôte

Plusieurs clients, tels que plusieurs développeurs ou agents IA, peuvent exécuter leurs propres appareils Cuttlefish sur le même hôte en même temps. La définition de la variable d'environnement PODCVD_CLIENT_ID limite les commandes podcvd aux groupes d'instances d'un client. Ainsi, une commande telle que podcvd clear d'un client n'affecte pas les appareils d'un autre. Le dépôt Cuttlefish fournit également une compétence podcvd qui permet aux agents IA de créer, de contrôler et de nettoyer des appareils.

Interface identique à cvd

Malgré ces différences, podcvd possède exactement la même interface de ligne de commande que cvd. Vous pouvez utiliser les mêmes commandes et options que celles que vous utilisez déjà avec cvd. Vous n'avez donc pas besoin d'apprendre à utiliser podcvd.

Commencer

La documentation podcvd est gérée dans le dépôt android-cuttlefish sur GitHub :

  • podcvd : exigences concernant l'hôte, installation, configuration de l'hôte et PODCVD_CLIENT_ID
  • Images de conteneurs : image de conteneur cuttlefish-orchestration utilisée par podcvd
  • podcvd skill : compétence pour les agents IA.