Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Databricks CLI tillhandahåller hjälpkommandot databricks air images push för att kombinera Docker-autentisering, bildtaggning och att skicka till Artifact Registry. Den känner automatiskt av registerregionen. Du kan använda denna hjälpare istället för de manuella stegen i Artifact Registry-guiden. Hjälparen bygger inte bilder eller skickar in arbetsbelastningar.
Prerequisites
- Installera Databricks CLI version 1.19.0 eller senare. Se Installera eller uppdatera Databricks CLI.
- Sätt upp Artifact Registry i arbetsytan där du vill lagra bilden. Se Kom igång med Artefaktregistret.
- Skapa eller välj en destinationskatalog och ett schema, och få de nödvändiga Artifact Registry-behörigheterna.
- Installera och starta Docker på din lokala dator. Docker måste finnas tillgängligt på din
PATH.
Konfigurera autentisering för arbetsyta
Skapa eller uppdatera en arbetsmiljöprofil OAuth för arbetsytan där du vill lagra bilden:
databricks auth login --profile my-databricks-profile
Docker-inloggningshjälparen kräver denna arbetsyta OAuth-profil. För stödda autentiseringsmetoder, se Sätt upp Docker-autentisering.
Tryck en lokal bild
Till exempel, skicka en lokal bild med namnet my-training-image:v1 till main.ml.training:v1:
databricks air images push \
--profile my-databricks-profile \
--source my-training-image:v1 \
--catalog main \
--schema ml \
--artifact training:v1
Kommandot skriver ut namnet på Unity Catalog-bilden för att använda som environment.unity_catalog_image i din arbetsbelastnings-YAML. För detta exempel, använd main.ml.training:v1, som visas i Använd en docker-avbildning i en arbetsbelastning.
Hjälpprogrammet återanvänder en lokal källavbild när en sådan finns. Annars hämtar den källbilden för linux/amd64. Lägg till --pull för att hämta om en källavbild från registret även om den redan finns lokalt. Bilder måste använda linux/amd64. Bygg om en inkompatibel lokal image för den plattformen innan du pushar den. Om källbilden finns i ett privat register, autentisera Docker till det registret innan du kör hjälparen.
För att mata in bilddetaljerna interaktivt, kör databricks air images push --profile my-databricks-profile utan bildflaggorna. Kör databricks air images push --help för alla alternativ.
Skicka en bild från ett annat register
Du kan också använda CLI-hjälparen för att kopiera en befintlig avbildning från ett annat containerregister till Artifact Registry.
Följande exempel använder en privat Amazon Elastic Container Registry (ECR)-lagringsplats som källa. För detta exempel, installera och konfigurera AWS CLI med uppgifter som kan autentisera sig mot ECR och hämta källbilden. Dessa AWS-inloggningsuppgifter är separata från din Databricks-profil.
Först, autentisera Docker till källregistret ECR. Ersätt exempelet på AWS-konto-ID, region, repository och bildtagg med dina egna värden. AWS-regionen måste vara samma som källregistret i ECR, inte som Databricks-arbetsytan för målet. Se autentisering av privat register i AWS-dokumentationen.
aws ecr get-login-password --region us-west-2 | \
docker login --username AWS --password-stdin \
123456789012.dkr.ecr.us-west-2.amazonaws.com
Skicka sedan hela ECR-bildens URI som --source:
databricks air images push \
--profile my-databricks-profile \
--source 123456789012.dkr.ecr.us-west-2.amazonaws.com/my-training-image:v1 \
--catalog main \
--schema ml \
--artifact training:ecr-v1 \
--pull
Flaggan --pull hämtar linux/amd64 bilden från ECR även om den redan är cachelagrad lokalt. Hjälparen använder din lokala Docker-installation för att hämta, tagga och pusha bilden. Källbilden i ECR är oförändrad. När pushen lyckas, sätt environment.unity_catalog_image in main.ml.training:ecr-v1 YAML i din arbetsbelastning.