Configurez Declarative Automation Bundles pour fonctionner dans un environnement isolé
Les Declarative Automation Bundles dépendent de bibliothèques et d'outils externes pour fonctionner correctement. Les emplacements (URL) de ces dépendances doivent être accessibles, sinon l’initialisation du bundle échoue. Pour cette raison, avant d'utiliser les Declarative Automation Bundles dans un environnement réseau isolé qui n'a pas accès à Internet, vous devez download l'image conteneur Docker fournie par le CLI Databricks et gérer vos Declarative Automation Bundles via Docker.
Download l'image du conteneur Docker
L'image conteneur Docker de la CLI Databricks prend en charge les architectures de processeur ARM64 et AMD64, et est disponible dans le repository GitHub de la CLI Databricks. Vous pouvez download la dernière image disponible en exécutant la commande suivante :
docker pull ghcr.io/databricks/cli:latest
Si vous souhaitez download une image associée à une version spécifique de Databricks CLI, spécifiez la version comme indiqué ci-dessous :
docker pull ghcr.io/databricks/cli:v0.218.0
Gérez vos Declarative Automation Bundles via Docker
Une fois que vous avez download le conteneur Docker approprié, vous pouvez utiliser le Docker CLI pour exécuter les commandes databricks bundle, directement ou de manière interactive.
Exécution directe
Pour exécuter directement les commandes bundle, utilisez docker run. Par exemple, la commande suivante déploie le bundle situé à /my-bundle:
docker run -v /my-bundle:/my-bundle -e DATABRICKS_HOST=... -e DATABRICKS_TOKEN=... --workdir /my-bundle ghcr.io/databricks/cli:latest bundle deploy
Dans l'exemple ci-dessus, -v /my-bundle:/my-bundle monte my-bundle dans le système de fichiers du conteneur Docker en utilisant le même nom de bundle, -e DATABRICKS_HOST=... -e DATABRICKS_TOKEN=... authentifie la CLI Databricks en transmettant l'hôte et les identifiants en tant que variables d'environnement, et --workdir /my-bundle ghcr.io/databricks/cli:latest définit le répertoire de travail actuel sur /my-bundle. D'autres options de commande docker run se trouvent dans la documentation Docker.
Exécution interactive
Pour exécuter de manière interactive les commandes bundle, start par utiliser docker run avec les options -it et --entrypoint pour lancer une session de terminal sh intégrée qui est attachée au conteneur, comme indiqué ci-dessous :
docker run -v /my-bundle:/my-bundle -e DATABRICKS_HOST=... -e DATABRICKS_TOKEN=... -it --entrypoint /bin/sh --workdir /my-bundle ghcr.io/databricks/cli:latest
Lorsque la session de terminal Docker start, vous pouvez exécuter les commandes bundle directement dans le terminal. L'exemple suivant déploie le bundle nommé my-bundle:
/my-bundle # databricks bundle deploy
Les montages de volume se synchronisent bidirectionnellement afin que vous puissiez apporter des modifications à votre bundle localement, puis utiliser cette session de terminal Docker pour exécuter des commandes bundle. Dans ce cas, il n'est pas nécessaire d'exécuter docker run à nouveau.