Les dépôts Yum d'Artifact Registry vous permettent de contrôler les versions de packages RPM installées par vos machines virtuelles (VM). Vous pouvez configurer des instances Compute Engine ou des VM externes pour extraire des packages de dépôts privés ou publics à l'aide des gestionnaires de packages Yum ou DNF.
Avant de commencer
Si le dépôt Yum cible n'existe pas, créez-en un. Vous pouvez créer un dépôt privé ou un dépôt public ne nécessitant pas d'authentification.
Préparer une VM pour accéder à un dépôt Yum
Pour préparer une VM à accéder à un dépôt Yum, utilisez l'outil client yum ou dnf :
Dépôt privé
Choisissez le compte de service que vous utiliserez pour accorder l'accès.
- Pour les VM Compute Engine, il peut s'agir du compte de service par défaut. Artifact Registry récupère automatiquement les identifiants du compte de service de VM Compute Engine pour toute VM utilisant un compte de service.
- Pour les autres VM, créez ou choisissez un compte de service pour agir au nom de votre VM. Vous aurez besoin de l'emplacement du fichier de clé du compte de service pour configurer la VM. Vous pouvez afficher et créer des clés pour les comptes existants sur la page Comptes de service.
Accordez des autorisations d'accès au dépôt à votre compte de service.
Préparez la VM pour accéder au dépôt.
VM Compute Engine
Attribuez des niveaux d'accès à l'API
cloud-platformà la VM. Pour en savoir plus sur la définition des niveaux d'accès, consultez Modifier le compte de service et les niveaux d'accès d'une instance.Mettez à jour le cache du package à l'aide de la commande suivante :
sudo yum makecacheInstallez le plug-in Artifact Registry sur la VM à l'aide de la commande suivante :
sudo yum install FORMAT-plugin-artifact-registryRemplacez les éléments suivants :
FORMATpar l'un des éléments suivants :yum, si votre système d'exploitation est Enterprise Linux 7 ou une version antérieurednf, si votre système d'exploitation est Enterprise Linux 8 ou une version ultérieure
Autre VM
Installez la clé de signature RPM à l'aide de la commande suivante :
sudo rpm --import https://packages.cloud.google.com/yum/doc/rpm-package-key.gpgCréez un fichier nommé
/etc/yum.repos.d/artifact-registry-plugin.repoavec le contenu suivant :[ar-plugin] name=Artifact Registry Plugin baseurl=https://packages.cloud.google.com/yum/repos/FORMAT-plugin-artifact-registry-DISTRO-stable enabled=1 gpgcheck=1
Remplacez les éléments suivants :
FORMATpar l'un des éléments suivants :yum, si votre système d'exploitation est Enterprise Linux 7 ou une version antérieurednf, si votre système d'exploitation est Enterprise Linux 8 ou une version ultérieure
DISTROpar la version majeure de Red Hat Enterprise Linux au formatelX, oùXest la version. Voici des exemples de valeursDISTROvalides :el7,el8,el9etel10.
Mettez à jour Yum à l'aide de la commande suivante :
sudo yum makecacheInstallez le plug-in Artifact Registry sur la VM à l'aide de la commande suivante :
yum install FORMAT-plugin-artifact-registryRemplacez
FORMATpar l'un des éléments suivants :yum, si votre système d'exploitation est Enterprise Linux 7 ou une version antérieurednf, si votre système d'exploitation est Enterprise Linux 8 ou une version ultérieure
Recherchez la ligne
#service_account_json = "/path/to/creds.json"dans le fichierartifact-registry.conf, puis annulez la mise en commentaire de la ligne et ajoutez le chemin d'accès à la clé de votre compte de service.- Pour les systèmes d'exploitation Enterprise Linux 7 ou version antérieure, le chemin d'accès au fichier de configuration est
/etc/yum/pluginconf.d/artifact-registry.conf. - Pour les systèmes d'exploitation Enterprise Linux 8 ou version ultérieure, le chemin d'accès au fichier de configuration est
/etc/dnf/plugins/artifact-registry.conf.
Entrée du fichier de configuration :
service_account_json = "PATH_TO_SERVICE_ACCOUNT_KEY"
Remplacez
PATH_TO_SERVICE_ACCOUNT_KEYpar le chemin d'accès au fichier JSON de la clé de votre compte de service.- Pour les systèmes d'exploitation Enterprise Linux 7 ou version antérieure, le chemin d'accès au fichier de configuration est
Dépôt public
Configurez l'accès public au dépôt.
Configurer une VM pour accéder à un dépôt Yum standard
Pour configurer une VM afin qu'elle accède à un dépôt Yum, utilisez l'outil client yum ou dnf :
Générez la commande de configuration de la VM en exécutant la commande
gcloud beta artifacts print-settings yum:gcloud beta artifacts print-settings yum \ --repository=REPOSITORY \ --location=LOCATIONRemplacez les éléments suivants :
REPOSITORYest le nom du dépôt Artifact Registry.-
LOCATIONest l'emplacement régional du dépôt.
Le résultat ressemble à ce qui suit :
# To configure your package manager with this repository: # Update Yum: sudo yum makecache # Install the Yum credential helper: sudo yum install yum-plugin-artifact-registry # Configure your VM to access Artifact Registry packages using the following # command: sudo tee -a /etc/yum.repos.d/artifact-registry.repo << EOL [REPOSITORY] name=REPOSITORY baseurl=https://LOCATION-yum.s3nsregistry.fr/projects/PROJECT/REPOSITORY enabled=1 repo_gpgcheck=0 gpgcheck=0 EOL # Update Yum: sudo yum makecache
Configurez l'outil client
yumpour récupérer les packages de votre dépôt à l'aide de la commandeteeissue du résultat de la commandeprint-settings.Par exemple, pour installer des packages à partir du dépôt
my-repopublic dans le projetmy-projectet à l'emplacementu-france-east1, utilisez la commande suivante :sudo tee -a /etc/yum.repos.d/artifact-registry.repo << EOL [my-repo] name=My Repository baseurl=https://u-france-east1-yum.s3nsregistry.fr/projects/my-project/my-repo enabled=1 repo_gpgcheck=0 gpgcheck=0 EOL
Mettez à jour les sources de votre dépôt à l'aide de la commande suivante :
sudo yum makecache
Yum peut désormais se connecter au dépôt.
Si vous créez des dépôts Yum supplémentaires, créez un fichier .repo pour chacun d'eux dans /etc/yum.repos.d/. Exécutez à nouveau sudo yum update pour mettre à jour les sources du dépôt.