Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Distribuisci un'app Fabric su Fabric effettuando l'accesso, eseguendo il flusso di distribuzione della CLI e verificando che cosa npx rayfin up configura per la tua app. Questo articolo illustra il concetto di cosa accade durante la distribuzione.
Prerequisiti
- Progetto app Fabric con un file di configurazione
rayfin/rayfin.yml. Se non si ha ancora un progetto, vedere Creare il primo progetto app Fabric. - Un account Microsoft Entra ID con accesso a un'area di lavoro Fabric.
Distribuire la tua applicazione
Eseguire il comando seguente dalla radice del progetto:
npx rayfin up
Se non si è connessi, l'interfaccia della riga di comando avvia automaticamente un flusso di accesso interattivo.
Cosa fa la distribuzione
Il rayfin up comando esegue questi passaggi nell'ordine seguente:
- Crea un elemento app Fabric nell'area di lavoro Fabric oppure riutilizza quello esistente nelle distribuzioni successive.
- Recupera la chiave pubblicabile dal servizio remoto.
- Sincronizza le impostazioni di runtime dal tuo
rayfin.ymlal servizio remoto, incluse la configurazione di autenticazione e i flag del servizio. - Applica lo schema di database generato dai decoratori del modello di dati TypeScript.
- Compila e distribuisce contenuto statico se
staticHostingè abilitato inrayfin.yml: esegue il comando di compilazione, crea un pacchetto della cartella di output in un file ZIP e lo carica. - Salva in modo persistente i dettagli di distribuzione nei file
rayfin.ymle.env.fabric-*per le distribuzioni successive.
Dopo la distribuzione, la CLI visualizza:
- URL di hosting in cui è attiva l'app
- Collegamento al portale Fabric per gestire la distribuzione
- ID di distribuzione come riferimento
Configurare l'autenticazione
Nelle applicazioni distribuite è supportata solo l'autenticazione mediata da Fabric (Entra SSO). L'autenticazione tramite posta elettronica e password è disponibile durante lo sviluppo locale, ma non funziona dopo la distribuzione in Fabric.
Assicurati che rayfin.yml abbia l'autenticazione Fabric abilitata prima di eseguire rayfin up:
services:
auth:
enabled: true
fabric:
enabled: true
Anteprima della distribuzione senza modifiche
Usare --dry-run per visualizzare le operazioni eseguite dall'interfaccia della riga di comando senza creare o modificare risorse:
npx rayfin up --dry-run
Applicare le modifiche al database
Dopo l'aggiornamento dei modelli di dati, eseguire il push delle modifiche dello schema nel database remoto senza ridistribuire lo stack completo:
npx rayfin up db apply
Se la modifica dello schema comporta operazioni potenzialmente distruttive (eliminazione di colonne, ridenominazione delle tabelle), l'interfaccia della riga di comando avvisa e rifiuta di procedere. Usare --force per eseguire l'override del controllo di sicurezza:
npx rayfin up db apply --force
Caution
L'uso --force di può causare la perdita di dati. Esaminare attentamente le operazioni elencate e confermare di accettare le conseguenze prima di procedere.
Ridistribuire il contenuto statico
Quando è stato modificato solo il codice front-end, ridistribuire il contenuto statico in modo indipendente per un ciclo di iterazione più veloce:
npx rayfin up staticapp deploy
Questo comando esegue il componente configurato buildCommand, crea un pacchetto con l'output e lo carica nel servizio remoto.
Per ignorare il passaggio di compilazione e distribuire l'output esistente:
npx rayfin up staticapp deploy --skip-build
Controllare lo stato della distribuzione
Visualizzare lo stato corrente della distribuzione Fabric:
npx rayfin up status
Aggiungere --json per l'output leggibile dal computer:
npx rayfin up status --json
Aggiornare le distribuzioni esistenti
Dopo la prima distribuzione, rayfin.yml archivia i dettagli della distribuzione (rayfinItemId, fabricWorkspaceIde l'endpoint dell'elemento). L'esecuzione npx rayfin up aggiorna di nuovo la stessa distribuzione anziché crearne una nuova.
Per gli aggiornamenti mirati, usa i sottocomandi:
| Comando | Cosa aggiorna |
|---|---|
npx rayfin up |
Tutto: impostazioni, database e contenuto statico. |
npx rayfin up db apply |
Solo schema del database. |
npx rayfin up staticapp deploy |
Solo contenuto statico. |
Risolvere i problemi relativi alla distribuzione
La distribuzione non riesce con errore 401 o 403
La sessione potrebbe essere scaduta. Eseguire npx rayfin login per ripetere l'autenticazione, quindi riprovare npx rayfin up.
Il database genera report sulle modifiche distruttive
L'interfaccia della riga di comando di Rayfin blocca le modifiche dello schema che potrebbero causare la perdita di dati. Rivedere le operazioni elencate e utilizzare npx rayfin up db apply --force solo dopo aver confermato di accettare la perdita di dati.
La distribuzione statica supera il limite di dimensione
L'archivio compresso non deve superare i 100 MB. Ottimizza l'output della compilazione escludendo i file source map e le risorse di sviluppo di grandi dimensioni, oppure sposta i file binari nell'archiviazione di Fabric Apps.
Gestire l'app nel portale di Fabric
Dopo la distribuzione, è possibile gestire l'app Fabric direttamente nel portale Fabric.
Visualizzare le proprietà degli elementi
Aprire l'app Fabric nel portale di Fabric per visualizzare:
- URL dell'app : URL pubblico in cui è ospitato il contenuto statico.
- URL back-end dell'app : URL di base per tutti i servizi back-end.
Gestire i servizi figlio
Seleziona l'app Fabric per visualizzare i servizi correlati:
-
Sql Database : apre l'editor di query SQL Fabric. È possibile eseguire query di lettura sui dati. Le modifiche apportate allo schema direttamente nel portale di Fabric vengono sovrascritte nella successiva distribuzione di
rayfin up. - Autenticazione : consente di visualizzare e gestire gli utenti autenticati nella tabella Users del database SQL figlio.
Autorizzazioni dell'app
Per tutti i collaboratori dell'app Fabric, per distribuire un'app Fabric, devono disporre almeno dell'autorizzazione Edit sull'elemento.