Remote Bridge
Remote Bridge
Prerequisites
- Node.js v22+ environment with
npm - Databricks CLI (v1.0.0 or higher): install and configure it according to the official tutorial.
- A new Databricks app with AppKit installed. See Bootstrap a new Databricks app for more details.
Le remote bridge vous permet de développer sur un backend déployé tout en gardant votre interface et vos queries en local. C'est utile pour tester sur des données de production ou déboguer le code backend déployé sans avoir à redéployer votre application.
Quand utiliser le remote bridge
Utilisez le remote bridge dans les cas suivants :
- Tests sur des données de production
- Débogage du code backend déployé
- Développement de l'interface sans exécuter le backend en local
- Collaboration avec les membres de l'équipe sur un même backend
Démarrer et arrêter Remote Bridge
Pour démarrer le remote bridge, exécutez la commande suivante :
databricks apps dev-remoteLa commande va :
- Récupérer le nom de l'application à partir du contexte (le fichier
app.ymlou la saisie de l'utilisateur dans la CLI) - Démarrer un serveur de développement Vite local
- Établir un pont WebSocket vers votre application déployée
- Fournir deux URL :
- URL de l'application : lien direct pour votre usage personnel (
<app-url>?dev=true) - URL partageable : lien avec identifiant de tunnel à partager avec les membres de votre équipe (
<app-url>?dev=<tunnelId>)
- URL de l'application : lien direct pour votre usage personnel (
Pour connaître toutes les options disponibles, exécutez :
databricks apps dev-remote --helpPour arrêter le remote bridge, appuyez sur Ctrl+C dans le terminal.
Approbation de la connexion
Lorsque vous démarrez le remote bridge, vous êtes invité à approuver la connexion chaque fois que vous ouvrez l'URL dans votre navigateur depuis un nouvel appareil.
Vous pouvez transmettre l'URL aux membres de votre équipe afin qu'ils puissent voir l'application dans leur navigateur. Vous devrez tout de même approuver la connexion de votre côté.
Fonctionnement
Le remote bridge établit un pont WebSocket entre votre serveur de développement Vite local et le backend déployé, ce qui vous permet de développer l'interface en local tout en vous appuyant sur le backend déployé.
Détails
- Le navigateur se connecte au backend de l'application déployée à l'aide du paramètre de requête
?dev=trueou?dev=<tunnelId> - Le backend déployé relaie les requêtes d'interface vers votre machine locale via un tunnel WebSocket (
/dev-tunnel) - Le pont WebSocket (exécuté localement) reçoit du backend les requêtes fetch et les demandes de lecture de fichiers
- Le serveur de développement Vite local sert les fichiers de l'interface et assure le remplacement à chaud des modules (HMR)
- Le pont renvoie les réponses au backend via le WebSocket, qui les transmet ensuite au navigateur
Ce qui bénéficie du rechargement à chaud
Avec le remote bridge, vous bénéficiez d'un rechargement à chaud instantané pour :
- Modifications de l'interface - Toute modification de vos fichiers React/TypeScript/CSS dans le répertoire
client/ - Fichiers de queries - Les fichiers SQL du répertoire
config/queries/(fichiers.sqluniquement)
Le code backend, lui, n'est pas rechargé à chaud : vous devez redéployer votre application pour voir les modifications qui y sont apportées.