> ## Documentation Index
> Fetch the complete documentation index at: https://docs.kazzle.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Distribuzione

> Distribuisci app in produzione e su dispositivi locali.

# Distribuzione

Le app Kazzle possono essere distribuite sull'hosting di Kazzle o installate su computer locali.

## Distribuzione remota

Le distribuzioni sono asincrone: la pagina dell'app, l'AI o `kazzle deploy` da un checkout mettono in coda un job di distribuzione lato server. `kazzle deploy` carica il tuo checkout; il runner di distribuzione lo compila e lo distribuisce.

Per ogni componente:

1. **I componenti UI** vengono compilati in un'immagine Docker che esegue `runtime.prod.build` se impostato, altrimenti `bun run build`
2. **I componenti Process** eseguono il comando `runtime.prod.command` da `kazzle.config.ts` - la distribuzione fallisce se manca
3. Ogni componente ottiene la propria immagine e distribuzione
4. Viene assegnato un URL di produzione

Attiva una distribuzione dalla pagina dell'app o tramite l'AI:

```
Deploy my app
```

## URL di produzione

Le app distribuite ricevono un URL come `https://kazzle-{appId}.kazzle.app`. Le app con più componenti Process ottengono un URL per componente. Le app pubbliche sono accessibili a chiunque abbia l'URL. Le app private richiedono l'autenticazione Kazzle.

## Comandi runtime in produzione

| Fase                   | Comando                                                     | Quando                                     |
| ---------------------- | ----------------------------------------------------------- | ------------------------------------------ |
| `runtime.prod.build`   | Comando di build di produzione, o `bun run build` se omesso | Durante la distribuzione dei componenti UI |
| `runtime.prod.command` | Comando di avvio di produzione in `kazzle.config.ts`        | In produzione, avvia un componente Process |

I comandi di produzione devono essere comandi semplici (ad es. `bun server/index.ts`) - il runtime distribuito inietta `PORT`, `HOST` e i segreti direttamente. Consulta la pagina [Kazzle CLI](/apps/cli) per la divisione dev/produzione.

## Installazione locale

Le app possono anche essere eseguite su computer locali (il tuo computer locale) tramite il daemon Kazzle. Il comando `runtime.dev.command` avvia l'app in modalità sviluppo.
