toolkitbox

~/ / Articoli sull'IA / LLM locali su un VPS / Collegare Dify a Ollama sul proprio VPS

Collegare Dify a Ollama sul proprio VPS

Dify è una piattaforma per creare app di IA che puoi eseguire sul tuo server. Ollama esegue il modello. Questo articolo collega i due su un unico VPS: quanto deve essere grande il server, come avviare Dify, quali campi chiede il plugin Ollama e perché l'indirizzo che funziona su un portatile può non funzionare dentro Docker. Indica anche dove finisce la documentazione, così sai quali parti provare da solo.

Pubblicato: · 6 min di lettura · Fatti verificati sulla documentazione e sui repository ufficiali il 2026-10-27. Dify cambia in fretta, quindi leggi le note di rilascio della versione che installi.

Cosa serve prima di iniziare

La guida all'auto-hosting di Dify indica il minimo per Dify stesso. Il modello ha bisogno della propria memoria in aggiunta, quindi i due numeri vanno sommati. Lo strumento di stima qui sotto dà una cifra per il modello. Sommarla al minimo di Dify è una nostra regola pratica, non un'affermazione della documentazione di Dify.

VoceCosa dice la guida di Dify
CPUCPU >= 2 Core
MemoriaRAM >= 4 GiB
Docker ComposeDify richiede Docker Compose 2.24.0 o successivo.
Git, curl, jqIl comando di clonazione qui sotto usa git, curl e jq.

Provalo: Local LLM Memory Estimator

Modello

Tag Ollama qwen3:8b, quantizzazione Q4_K_M, dimensione di download 5.2 GB.

Stima

Pesi del modello
4.84 GiB
Cache KV
0.56 GiB
Riserva
1.00 GiB
Totale
6.41 GiB (6.88 GB)
Più piccola dimensione di memoria comune che lo contiene
8 GiB

Questa è una stima. Non include i buffer di calcolo del runtime e presuppone che ogni layer abbia la stessa forma KV. Misura un'esecuzione reale prima di scegliere un piano.

Dati del modello verificati il 2026-10-26.

Fonti: Ollama library · Configurazione del modello (config.json) · Ollama FAQ

Tutto viene eseguito nel tuo browser. Non viene caricato nulla.

Passo 1: avviare Dify con Docker Compose

Questi sono i comandi della guida all'auto-hosting di Dify. Il primo scarica da GitHub il tag dell'ultima release, così parti da una release e non da un branch non finito. Al momento della nostra verifica l'ultima release era la 1.18.0 (pubblicata il 2026-10-23).

PassoComando
Clonare l'ultima releasegit clone --branch "$(curl -s https://api.github.com/repos/langgenius/dify/releases/latest | jq -r .tag_name)" https://github.com/langgenius/dify.git
Entrare nella cartella Dockercd dify/docker
Copiare il file delle impostazionicp .env.example .env
Creare un token per il backend degli agentiopenssl rand -base64 32
Avviare Difydocker compose up -d

Inserisci il token stampato da openssl in .env come DIFY_AGENT_LOCAL_SANDBOX_AUTH_TOKEN prima dell'avvio. La guida dice che il backend degli agenti e la sua sandbox non si avviano senza di esso.

Passo 2: creare l'account amministratore

Dopo che i container sono attivi, la guida dice di aprire per prima la pagina di inizializzazione dell'amministratore: http://your_server_ip/install su un server, oppure http://localhost/install sul tuo computer. Crea lì l'account, poi accedi a http://your_server_ip.

La documentazione non dice chi può raggiungere quella pagina prima che l'account esista. Nostra raccomandazione, non un'affermazione dei documenti: crea l'account subito dopo l'avvio e leggi l'articolo sulla protezione di un server prima di lasciare Dify aperto a internet.

Passo 3: aggiungere il plugin Ollama e il modello

Nella documentazione attuale di Dify, i fornitori di modelli si installano da Integrations > Model Provider oppure da Marketplace, e poi si fa clic su Setup sulla scheda del fornitore. I nomi dei menu cambiano tra una versione e l'altra, quindi cerca l'elenco dei fornitori nella tua versione. La pagina del plugin Ollama su Marketplace (versione 1.0.3 al momento della nostra verifica) dice di installare Ollama, avviare un modello e verificare che la sua API locale funzioni prima di aggiungerlo a Dify.

Questi sono i campi del plugin, tratti dal suo README e dalla sua pagina su Marketplace.

CampoCosa inserire
Model NameIl modello di Ollama, per esempio gemma3, qwen3, deepseek-r1 o gpt-oss.
Base URLLa radice dell'host Ollama, http://<your-ollama-host>:11434 per un Ollama locale. Non includere /api, perché il plugin aggiunge da sé /api/chat, /api/generate e /api/embed.
API KeyFacoltativa per un Ollama locale. Necessaria solo per Ollama cloud.
Model TypeChat per chat, chiamata di strumenti e visione. La pagina di Marketplace elenca anche gli embedding di testo e il rerank.
Model Context LengthDeve corrispondere alla finestra di contesto del modello.
Upper bound for max tokensIl valore massimo di max tokens (num_predict) che Dify consente.
Vision support / Function call supportScegli Yes solo per un modello che lo supporta.
Attach Dify app_id as request headersDisattivato per impostazione predefinita. Se attivo, Dify aggiunge le intestazioni X-Dify-App-Id e X-Dify-Source alle sue chiamate a Ollama. Ollama non le usa.

Per sapere quali modelli supportano la visione e la chiamata di strumenti, vedi l'articolo su ciò che sanno fare i modelli della libreria di Ollama.

Passo 4: l'indirizzo che funziona dall'interno di Docker

Dify gira nei container e Ollama gira sul server stesso. In un container, localhost è il container, non il server. Il README del plugin dice: usa un indirizzo dell'host che il container di Dify possa raggiungere, come http://host.docker.internal:11434 o un indirizzo IP della LAN.

La documentazione di Docker spiega il nome. L'opzione --add-host supporta un valore speciale, host-gateway, che si risolve nell'indirizzo IP interno dell'host, ed è consuetudine usare host.docker.internal per quel nome. Dice anche che Docker Desktop risolve il nome automaticamente. L'esempio nella documentazione è --add-host host.docker.internal=host-gateway.

Cosa abbiamo verificatoRisultato
Il docker-compose.yaml di Dify definisce host.docker.internal?No. Non abbiamo trovato né host.docker.internal né una voce extra_hosts nel file del branch main.
Il riferimento di Docker Compose descrive extra_hosts?Sì, come mappature di nomi host nella forma HOSTNAME=IP che finiscono in /etc/hosts. La pagina che abbiamo letto non menziona host-gateway per extra_hosts.
Ollama ascolta su indirizzi diversi da 127.0.0.1?Non per impostazione predefinita. La FAQ di Ollama dice che si collega a 127.0.0.1 sulla porta 11434 e che la variabile d'ambiente OLLAMA_HOST cambia l'indirizzo di bind.

Una nostra interpretazione, non un'affermazione dei documenti: su un server Linux aggiungi tu stesso il nome host, oppure usi l'indirizzo del server, e potresti dover cambiare anche l'indirizzo su cui Ollama ascolta. Non abbiamo provato questa combinazione. Se cambi OLLAMA_HOST, la porta 11434 diventa raggiungibile da altre macchine e Ollama non ha una propria password, quindi chiudi quella porta verso l'esterno nel firewall. Gli articoli sull'installazione di Ollama e su come mettergli davanti nginx descrivono le impostazioni.

Passo 5: gli embedding e ciò che il plugin non fa

La pagina del plugin su Marketplace dice che supporta streaming, thinking, visione, chiamata di strumenti ed embedding di testo, e che i vettori di embedding sono L2-normalized. Per gli embedding aggiungi un secondo modello di tipo embedding di testo, con un modello di embedding della libreria di Ollama.

Elenca anche ciò che non è incluso. Ollama non ha un endpoint rerank nativo, quindi un modello di rerank richiede un servizio di rerank compatibile con OpenAI. Nemmeno la ricerca sul web è inclusa: serve un plugin di strumenti di Dify separato o un flusso di lavoro esterno.

Se la connessione non funziona

  • Esegui ollama ps e controlla che il modello sia caricato, e apri http://127.0.0.1:11434 sul server per vedere se Ollama risponde.
  • Controlla la Base URL. È la radice dell'host, con la porta e senza /api.
  • Controlla che i container di Dify possano raggiungere l'indirizzo. La documentazione di Dify dice che le sue richieste in uscita passano da un proxy che blocca gli intervalli di IP interni e privati. La pagina nomina i nodi HTTP e i download di immagini, e non dice se le richieste dei fornitori di modelli seguano lo stesso percorso. Se usi un indirizzo privato e viene rifiutato, questo è un posto dove guardare.
  • Leggi i log dei container con docker compose logs. Nella documentazione non abbiamo trovato un elenco dei messaggi di errore.

Tenere Dify aggiornato

La guida dice che i passaggi di aggiornamento variano da una release all'altra, quindi segui la guida all'aggiornamento della versione a cui passi, che si trova nella pagina Releases di Dify. Dopo un aggiornamento, confronta .env.example con il tuo .env per cercare variabili nuove o modificate. Se hai modificato docker-compose.yaml, applica di nuovo le tue modifiche al file della nuova release, perché una release può aggiungere servizi obbligatori.

Fonti

Leggi anche