Stocker des packages Apt dans Artifact Registry
Ce guide de démarrage rapide vous explique comment configurer un dépôt Apt Artifact Registry privé, y ajouter un package Debian et installer le package sur une VM Compute Engine exécutant un système d'exploitation basé sur Debian.
Pour en savoir plus sur la gestion des packages Debian, consultez Utiliser des packages Debian.
Avant de commencer
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Artifact Registry API.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Artifact Registry API.
Lancer Cloud Shell
Cloud Shell est préinstallé avec Google Cloud CLI. gcloud CLI fournit l'interface de ligne de commande principale pour Google Cloud.
Lancez Cloud Shell :
Accédez à la console Google Cloud .
Dans la console Google Cloud , cliquez sur Activer Cloud Shell
.
Une session Cloud Shell s'ouvre dans un cadre situé en bas de la console.
Vous utiliserez ce shell pour exécuter les commandes gcloud
afin de créer une VM et un dépôt.
Créer un dépôt
Créez le dépôt pour vos artefacts.
Créez le dépôt :
Console
Ouvrez la page Dépôts dans la console Google Cloud .
Cliquez sur Créer un dépôt.
Spécifiez
quickstart-apt-repo
comme nom de dépôt.Sélectionnez Apt comme format.
Sous Type d'emplacement, sélectionnez Région, puis l'emplacement
us-west1
.Cliquez sur Créer.
Le dépôt est ajouté à la liste des dépôts.
gcloud
Dans Cloud Shell, exécutez la commande suivante pour créer un dépôt Apt dans le projet actuel nommé
quickstart-apt-repo
à l'emplacementus-west1
.gcloud artifacts repositories create quickstart-apt-repo \ --repository-format=apt \ --location=us-west1 \ --description="Apt repository"
Exécutez la commande suivante pour vérifier que votre dépôt a bien été créé :
gcloud artifacts repositories list
Vous pouvez désormais ajouter un package au dépôt.
Ajouter un package au dépôt
Vous pouvez importer un package dans un dépôt à l'aide de Google Cloud CLI ou importer un package stocké dans Cloud Storage. Si vous créez des packages à l'aide de Cloud Build, la compilation peut stocker les packages dans Cloud Storage pour que vous puissiez les importer.Pour ce guide de démarrage rapide, vous allez importer un exemple de fichier à l'aide de la commande gcloud artifacts apt upload
.
Dans Cloud Shell, téléchargez la fiche de référence rapide Apt avec la commande suivante :
apt download apt-dpkg-ref
Apt télécharge la dernière version du package disponible dans les dépôts Apt configurés.
Get:1 http://deb.debian.org/debian buster/main amd64 apt-dpkg-ref all 5.3.1+nmu2 [113 kB] Fetched 113 kB in 0s (428 kB/s)
Exécutez
ls
pour obtenir le nom de fichier de la fiche de référence rapide Apt. Le nom du fichier est semblable àapt-dpkg-ref_5.3.1+nmu2_all.deb
.Pour simplifier les commandes
gcloud
, définissez le dépôt par défaut surquickstart-apt-repo
et l'emplacement par défaut surus-west1
. Une fois les valeurs définies, vous n'avez pas besoin de les spécifier dans les commandesgcloud
nécessitant un dépôt ou un emplacement.Pour définir le dépôt, exécutez la commande suivante :
gcloud config set artifacts/repository quickstart-apt-repo
Pour définir l'emplacement, exécutez la commande suivante :
gcloud config set artifacts/location us-west1
Pour plus d'informations sur ces commandes, consultez la documentation gcloud config set.
Exécutez la commande
gcloud artifacts apt upload
pour importer le package dans le dépôt :gcloud artifacts apt upload quickstart-apt-repo \ --source=FILE_NAME
Remplacez
FILE_NAME
par le chemin d'accès à la fiche de référence rapide Apt.
Afficher le package dans le dépôt
Vérifiez que votre package a bien été ajouté au dépôt.
Console
Ouvrez la page Dépôts dans la console Google Cloud .
Dans la liste des dépôts, cliquez sur le dépôt quickstart-apt-repo.
La page Packages répertorie les packages du dépôt.
gcloud
Pour lister les packages dans le dépôt quickstart-apt-repo
, exécutez la commande suivante :
gcloud artifacts packages list
Pour afficher les versions d'un package dans quickstart-apt-repo
, exécutez la commande suivante :
gcloud artifacts versions list --package=apt-dpkg-ref
Créer une VM
Créez une instance de VM Compute Engine sur laquelle vous installerez le package d'exemple.
Dans Cloud Shell, exécutez la commande suivante pour créer une instance de VM nommée quickstart-apt-vm
:
gcloud compute instances create quickstart-apt-vm \
--image-family=debian-10 \
--image-project=debian-cloud \
--scopes=cloud-platform
Par défaut, la VM ne dispose pas des niveaux d'accès requis pour fonctionner avec le dépôt. L'indicateur --scopes
définit le niveau d'accès de la VM sur cloud-platform
.
Configurer le gestionnaire de packages
Pour installer un package sur la VM, ajoutez le dépôt que vous avez créé au fichier de configuration Apt qui définit les dépôts de packages.
Accédez à la page des instances de VM.
Sur la ligne correspondant à votre VM, cliquez sur SSH. Une nouvelle fenêtre s'ouvre avec une session de terminal sur la VM.
Exécutez
gcloud init
pour initialiser Google Cloud CLI sur votre VM.Mettre à jour Apt :
sudo apt update
Installez le programme d'assistance pour les identifiants Apt sur la VM pour permettre à Apt d'effectuer l'authentification :
sudo apt install apt-transport-artifact-registry
Configurez votre VM pour accéder aux packages Artifact Registry :
echo 'deb ar+https://us-west1-apt.pkg.dev/projects/PROJECT quickstart-apt-repo main' | sudo tee -a /etc/apt/sources.list.d/artifact-registry.list
Remplacez PROJECT par votre Google Cloud ID de projet.
Installer le package
Installez le package que vous avez ajouté au dépôt.
Mettez à jour la liste des packages disponibles :
sudo apt update
Installez le package dans votre dépôt.
sudo apt install apt-dpkg-ref/quickstart-apt-repo
Les informations d'installation renvoyées ressemblent à l'exemple suivant :
Reading package lists... Done Building dependency tree Reading state information... Done Selected version '5.3.1+nmu2' (Debian:10.7/stable, namespaces/my-repo/repositories/quickstart-apt-repo:quickstart -apt-repo [all]) for 'apt-dpkg-ref' The following NEW packages will be installed: apt-dpkg-ref 0 upgraded, 1 newly installed, 0 to remove and 3 not upgraded. Need to get 113 kB of archives. After this operation, 128 kB of additional disk space will be used. Get:1 http://deb.debian.org/debian buster/main amd64 apt-dpkg-ref all 5.3.1+nmu2 [113 kB] Fetched 113 kB in 0s (693 kB/s) Selecting previously unselected package apt-dpkg-ref. (Reading database ... 39506 files and directories currently installed.) Preparing to unpack .../apt-dpkg-ref_5.3.1+nmu2_all.deb ... Unpacking apt-dpkg-ref (5.3.1+nmu2) ... Setting up apt-dpkg-ref (5.3.1+nmu2) ...
Effectuer un nettoyage
Pour éviter que les ressources utilisées sur cette page soient facturées sur votre compte Google Cloud , procédez comme suit :
Avant de supprimer le dépôt, assurez-vous que tous les packages que vous souhaitez conserver sont disponibles à un autre emplacement.
Pour supprimer le dépôt :
Console
Ouvrez la page Dépôts dans la console Google Cloud .
Dans la liste des dépôts, sélectionnez le dépôt quickstart-apt-repo.
Cliquez sur Supprimer.
gcloud
Pour supprimer le dépôt
quickstart-apt-repo
, exécutez la commande suivante :gcloud artifacts repositories delete quickstart-apt-repo
Si vous souhaitez supprimer le dépôt par défaut et les paramètres d'emplacement que vous avez définis pour la configuration
gcloud
active, exécutez les commandes suivantes :gcloud config unset artifacts/repository gcloud config unset artifacts/location
Pour supprimer la VM que vous avez créée, exécutez la commande suivante :
gcloud compute instances delete quickstart-apt-vm
Étapes suivantes
- Découvrez comment utiliser les packages Deb.
- En savoir plus sur DevOps et découvrir le programme de recherche DevOps