Note
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier les répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de changer de répertoire.
Découvrez comment utiliser Ruby pour créer, télécharger et répertorier des objets blob dans un conteneur dans le Stockage Blob Microsoft Azure.
Conditions préalables
Pour accéder à Stockage Azure, vous avez besoin d’un abonnement Azure. Si vous n’avez pas d’abonnement, vous pouvez créer un compte gratuit avant de commencer.
Tous les accès à Stockage Azure se font via un compte de stockage. Pour ce guide de démarrage rapide, créez un compte de stockage à l’aide du portail Azure, d’Azure PowerShell ou de l’interface Azure CLI. Pour obtenir de l’aide sur la création d’un compte de stockage, consultez Créer un compte de stockage.
Vérifiez que les conditions préalables supplémentaires suivantes sont installées :
Bibliothèque de client Stockage Azure pour Ruby, à l’aide du package RubyGem :
gem install azure-storage-blob
Téléchargement de l'exemple d'application
L’exemple d’application utilisé dans ce guide de démarrage rapide est une application Ruby de base.
Utilisez git pour télécharger une copie de l’application dans votre environnement de développement. Cette commande clone le référentiel sur votre ordinateur local :
git clone https://github.com/Azure-Samples/storage-blobs-ruby-quickstart.git
Accédez au dossier de démarrage rapide storage-blobs-ruby- , puis ouvrez le fichier example.rb dans votre éditeur de code.
Copier vos informations d’identification depuis le portail Azure
L’exemple d’application doit autoriser l’accès à votre compte de stockage. Fournissez les informations d’identification de votre compte de stockage à l’application sous la forme d’une chaîne de connexion. Pour afficher les informations d’identification de votre compte de stockage :
Dans la section Paramètres de la vue d’ensemble du compte de stockage, sélectionnez clés d’accès pour afficher les clés d’accès et la chaîne de connexion de votre compte.
Notez le nom de votre compte de stockage, dont vous aurez besoin pour l’autorisation.
Recherchez la valeur clé sous clé1, puis sélectionnez Copier pour copier la clé de compte.
capture d’écran

Configurer votre chaîne de connexion de stockage
Fournissez le nom et la clé de votre compte de stockage pour créer une instance BlobService pour votre application.
Le code suivant dans le fichier example.rb instancie un nouvel objet BlobService . Remplacez les valeurs accountname et accountkey par le nom et la clé de votre compte.
# Create a BlobService object
account_name = "accountname"
account_key = "accountkey"
blob_client = Azure::Storage::Blob::BlobService.create(
storage_account_name: account_name,
storage_access_key: account_key
)
Exécuter l’exemple
L’exemple crée un conteneur dans Le Stockage Blob, crée un objet blob dans le conteneur, répertorie les objets blob du conteneur et télécharge l’objet blob dans un fichier local.
Exécutez l’exemple. Voici un exemple de sortie de l’exécution de l’application :
C:\azure-samples\storage-blobs-ruby-quickstart> ruby example.rb
Creating a container: quickstartblobs18cd9ec0-f4ac-4688-a979-75c31a70503e
Creating blob: QuickStart_6f8f29a8-879a-41fb-9db2-0b8595180728.txt
List blobs in the container following continuation token
Blob name: QuickStart_6f8f29a8-879a-41fb-9db2-0b8595180728.txt
Downloading blob to C:/Users/azureuser/Documents/QuickStart_6f8f29a8-879a-41fb-9db2-0b8595180728.txt
Paused, press the Enter key to delete resources created by the sample and exit the application
Lorsque vous appuyez sur Entrée pour continuer, l’exemple de programme supprime le conteneur de stockage et le fichier local. Avant de continuer, consultez votre dossier Documents pour le fichier téléchargé.
Vous pouvez également utiliser l’Explorateur Stockage Azure pour afficher les fichiers de votre compte de stockage. L’Explorateur Stockage Azure est un outil multiplateforme gratuit qui vous permet d’accéder aux informations de votre compte de stockage.
Une fois que vous avez vérifié les fichiers, appuyez sur la touche Entrée pour supprimer les fichiers de test et terminer la démonstration. Ouvrez le fichier example.rb pour examiner le code.
Comprendre l’exemple de code
Ensuite, nous allons parcourir l’exemple de code pour vous permettre de comprendre son fonctionnement.
Obtenir des références aux objets de stockage
La première chose à faire est de créer des instances des objets utilisés pour accéder et gérer le stockage Blob. Ces objets s’appuient les uns sur les autres. Chacun est utilisé par le suivant dans la liste.
- Créez une instance de l’objet BlobService stockage Azure pour configurer les informations d’identification de connexion.
- Créez l’objet Container , qui représente le conteneur auquel vous accédez. Les conteneurs sont utilisés pour organiser vos blobs comme des dossiers sur votre ordinateur pour organiser vos fichiers.
Une fois que vous avez l’objet conteneur, vous pouvez créer un objet blob de type Block qui pointe vers un blob spécifique qui vous intéresse. Utilisez l’objet Block pour créer, télécharger et copier des objets blob.
Important
Les noms de conteneurs doivent être en minuscules. Pour plus d’informations sur les noms de conteneurs et d’objets blob, consultez Affectation de noms et référencement de conteneurs, d’objets blob et de métadonnées.
L’exemple de code suivant :
- Crée un conteneur
- Définit les autorisations sur le conteneur afin que les blocs de données soient publics. Le conteneur est appelé quickstartblobs avec un ID unique ajouté.
# Create a container
container_name = "quickstartblobs" + SecureRandom.uuid
puts "\nCreating a container: " + container_name
container = blob_client.create_container(container_name)
# Set the permission so the blobs are public
blob_client.set_container_acl(container_name, "container")
Créer un blob dans le conteneur
Le Stockage Blob prend en charge les blocs blobs, les blobs d’ajout et les blobs de pages. Pour créer un objet blob, appelez la méthode create_block_blob en passant les données de l’objet blob.
L’exemple suivant crée un objet blob appelé QuickStart_ avec un ID unique et une extension de fichier.txt dans le conteneur créé précédemment.
# Create a new block blob containing 'Hello, World!'
blob_name = "QuickStart_" + SecureRandom.uuid + ".txt"
blob_data = "Hello, World!"
puts "\nCreating blob: " + blob_name
blob_client.create_block_blob(container.name, blob_name, blob_data)
Les blobs de blocs peuvent être aussi volumineux que 4,7 To, allant de feuilles de calcul jusqu'à des fichiers vidéo volumineux. Les blobs de pages sont principalement utilisés pour les fichiers de disque dur virtuel qui soutiennent les machines virtuelles IaaS. Les objets blob d’ajout sont couramment utilisés pour la journalisation, par exemple lorsque vous souhaitez écrire dans un fichier et continuer à ajouter des informations.
Répertorier les blobs dans un conteneur
Obtenez la liste des fichiers dans le conteneur à l’aide de la méthode list_blobs . Le code suivant récupère la liste des objets blob, puis affiche leurs noms.
# List the blobs in the container
puts "\nList blobs in the container following continuation token"
nextMarker = nil
loop do
blobs = blob_client.list_blobs(container_name, { marker: nextMarker })
blobs.each do |blob|
puts "\tBlob name: #{blob.name}"
end
nextMarker = blobs.continuation_token
break unless nextMarker && !nextMarker.empty?
end
Télécharger un objet blob
Téléchargez un objet blob sur votre disque local à l’aide de la méthode get_blob . Le code suivant télécharge l’objet blob créé dans une section précédente.
# Download the blob
# Set the path to the local folder for downloading
if(is_windows)
local_path = File.expand_path("~/Documents")
else
local_path = File.expand_path("~/")
end
# Create the full path to the downloaded file
full_path_to_file = File.join(local_path, blob_name)
puts "\nDownloading blob to " + full_path_to_file
blob, content = blob_client.get_blob(container_name, blob_name)
File.open(full_path_to_file,"wb") {|f| f.write(content)}
Nettoyer les ressources
Si un objet blob n’est plus nécessaire, utilisez delete_blob pour le supprimer. Supprimez un conteneur entier à l’aide de la méthode delete_container . La suppression d’un conteneur supprime également tous les objets blob stockés dans le conteneur.
# Clean up resources, including the container and the downloaded file
blob_client.delete_container(container_name)
File.delete(full_path_to_file)
Ressources pour le développement d’applications Ruby avec des objets blob
Consultez ces ressources supplémentaires pour le développement Ruby :
- Affichez et téléchargez le code source de la bibliothèque cliente Ruby pour Stockage Azure sur GitHub.
- Explorez des exemples Azure écrits à l’aide de la bibliothèque cliente Ruby.
- Exemple : Prise en main du stockage Azure dans Ruby
Étapes suivantes
Dans ce guide de démarrage rapide, vous avez appris à transférer des fichiers entre stockage Blob Azure et un disque local à l’aide de Ruby. Pour en savoir plus sur l’utilisation du stockage Blob, passez à la vue d’ensemble du compte de stockage.
Pour plus d’informations sur l’Explorateur stockage et les objets blob, consultez Gérer les ressources Stockage Blob Azure avec l’Explorateur Stockage.