Rövid útmutató: Azure Blob Storage Ruby-ügyfélkódtár
Megtudhatja, hogyan hozhat létre, tölthet le és listázhat blobokat a Microsoft Azure Blob Storage tárolójában a Ruby használatával.
Előfeltételek
Az Azure Storage eléréséhez Azure-előfizetésre lesz szüksége. Ha még nem rendelkezik előfizetéssel, a kezdés előtt hozzon létre egy ingyenes fiókot .
Az Azure Storage-hoz való hozzáférés egy tárfiókon keresztül történik. Ebben a rövid útmutatóban hozzon létre egy tárfiókot a Azure Portal, a Azure PowerShell vagy az Azure CLI használatával. A tárfiók létrehozásával kapcsolatban lásd: Tárfiók létrehozása.
Győződjön meg arról, hogy telepítve vannak a következő további előfeltételek:
A Rubyhoz készült Azure Storage-ügyfélkódtár a RubyGem csomag használatával:
gem install azure-storage-blob
A mintaalkalmazás letöltése
A rövid útmutatóban használt mintaalkalmazás egy egyszerű Ruby-alkalmazás.
A Git használatával letöltheti az alkalmazás egy példányát a fejlesztői környezetbe. Ez a parancs klónozza az adattárat a helyi gépre:
git clone https://github.com/Azure-Samples/storage-blobs-ruby-quickstart.git
Lépjen a storage-blobs-ruby-quickstart mappába, és nyissa meg a example.rb fájlt a kódszerkesztőben.
A hitelesítési adatok másolása az Azure Portalról
A mintaalkalmazásnak hitelesítenie kell a tárfiókhoz való hozzáférést. Adja meg a tárfiók hitelesítő adatait az alkalmazásnak egy kapcsolati sztring formájában. A tárfiók hitelesítő adatainak megtekintéséhez a következőt kell tennie:
A Azure Portal nyissa meg a tárfiókot.
A tárfiók áttekintésének Beállítások szakaszában válassza a Hozzáférési kulcsok lehetőséget a fiók hozzáférési kulcsainak és kapcsolati sztring megjelenítéséhez.
Jegyezze fel tárfiókja nevét, mert a hitelesítésnél szüksége lesz rá.
Keresse meg a Kulcs értéket a key1 alatt, és válassza a Másolás lehetőséget a fiókkulcs másolásához.
A tárolási kapcsolati sztring konfigurálása
Adja meg a tárfiók nevét és a fiókkulcsot egy BlobService-példány létrehozásához az alkalmazáshoz.
A example.rb fájlban található alábbi kód egy új BlobService-objektumot hoz létre. Az accountname és az accountkey értékeket cserélje le a fiók nevére, illetve kulcsára.
# 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
)
Minta futtatása
A minta létrehoz egy tárolót a Blob Storage-ban, létrehoz egy új blobot a tárolóban, felsorolja a tárolóban lévő blobokat, és letölti a blobot egy helyi fájlba.
Futtassa a mintát. Íme egy példa az alkalmazás futtatásából származó kimenetre:
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
Amikor az Enter billentyűt lenyomja a folytatáshoz, a mintaprogram törli a tárolót és a helyi fájlt. A folytatás előtt ellenőrizze a Letöltött fájl Dokumentumok mappáját.
A tárfiókban lévő fájlok Azure Storage Explorer is megtekinthetők. Az Azure Storage Explorer egy ingyenes, platformfüggetlen eszköz, amellyel elérheti a tárfiókjával kapcsolatos információkat.
Miután ellenőrizte a fájlokat, nyomja le az Enter billentyűt a tesztfájlok törléséhez és a bemutató befejezéséhez. Nyissa meg a example.rb fájlt a kód megtekintéséhez.
A mintakód értelmezése
Ezután végigvezetjük a mintakódon, hogy megérthesse, hogyan működik.
Referenciák beszerzése a tárolóobjektumokhoz
Az első teendő a Blob Storage eléréséhez és kezeléséhez használt objektumok példányainak létrehozása. Ezek az objektumok egymásra épülnek. Mindegyiket a listában utána következő használja.
- Hozzon létre egy példányt az Azure Storage BlobService objektumából a kapcsolati hitelesítő adatok beállításához.
- Hozza létre a tárolóobjektumot , amely az elérni kívánt tárolót jelöli. A tárolók a blobok csoportosítására használhatók, hasonlóan ahhoz, ahogyan a számítógépen a mappákkal rendszerezi a fájlokat.
Miután létrehozta a tárolóobjektumot, létrehozhat egy blokkblobobjektumot, amely egy adott blobra mutat, amelyben érdekli. Blobok létrehozásához, letöltéséhez és másolásához használja a Blokk objektumot.
Fontos
A tárolók nevei csak kisbetűket tartalmazhatnak. A tárolók és blobok nevével kapcsolatos további információkért lásd: Tárolók, blobok és metaadatok elnevezése és hivatkozása.
A következő példakód:
- Új tároló létrehozása
- Engedélyeket állít be a tárolón, hogy a blobok nyilvánosak legyenek. A tároló neve quickstartblobs , hozzáfűzve egy egyedi azonosítóval.
# 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")
Blob létrehozása a tárolóban
A Blob Storage támogatja a blokkblobokat, a hozzáfűző blobokat és az oldalblobokat. Blob létrehozásához hívja meg a create_block_blob metódust, amely átadja a blob adatait.
Az alábbi példa egy QuickStart_ nevű blobot hoz létre, amely egyedi azonosítóval és egy.txt fájlkiterjesztéssel rendelkezik a korábban létrehozott tárolóban.
# 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)
A blokkblobok akár 4,7 TB méretűek is lehetnek, és a számolótábláktól a nagy videofájlokig bármi lehet. A lapblobokat elsősorban az IaaS virtuális gépeket visszafedő VHD-fájlokhoz használják. A hozzáfűző blobokat gyakran használják naplózáshoz, például ha fájlba szeretne írni, majd további információkat szeretne hozzáadni.
Tárolóban lévő blobok kilistázása
Szerezze be a tárolóban található fájlok listáját a list_blobs metódus használatával. Az alábbi kód lekéri a blobok listáját, majd megjeleníti a nevüket.
# 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
Blob letöltése
Töltsön le egy blobot a helyi lemezre a get_blob metódus használatával. Az alábbi kód letölti az előző szakaszban létrehozott blobot.
# 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)}
Az erőforrások eltávolítása
Ha már nincs szükség blobra, távolítsa el a delete_blob . Töröljön egy teljes tárolót a delete_container metódus használatával. A tároló törlése a tárolóban tárolt blobokat is törli.
# Clean up resources, including the container and the downloaded file
blob_client.delete_container(container_name)
File.delete(full_path_to_file)
Blobokkal rendelkező Ruby-alkalmazások fejlesztéséhez használható forrásanyagok
Tekintse meg az alábbi további forrásokat a Ruby-fejlesztéshez:
- Az Azure Storage-hoz készült Ruby ügyféloldali kódtár forráskódját a GitHubon tekintheti meg és töltheti le.
- Ismerkedjen meg a Ruby-ügyfélkódtár használatával írt Azure-mintákkal .
- Minta: Első lépések az Azure Storage-ral a Rubyban
Következő lépések
Ebben a rövid útmutatóban megtanulta, hogyan vihet át fájlokat Azure Blob Storage és egy helyi lemez között a Ruby használatával. A Blob Storage használatával kapcsolatos további információkért tekintse meg a Tárfiók áttekintését.
A Storage Explorer és blobokkal kapcsolatos további információkért lásd: Azure Blob Storage erőforrások kezelése Storage Explorer.