toolkitbox

~/ / Artykuły o AI / Lokalne LLM na VPS / Połącz Dify z Ollamą na własnym VPS

Połącz Dify z Ollamą na własnym VPS

Dify to platforma do budowania aplikacji AI, którą można uruchomić na własnym serwerze. Model uruchamia Ollama. Ten artykuł łączy oba programy na jednym VPS: jak duży musi być serwer, jak uruchomić Dify, o jakie pola prosi wtyczka Ollama i dlaczego adres, który działa na laptopie, może zawieść wewnątrz Dockera. Mówi też, gdzie kończy się dokumentacja, żebyś wiedział, które elementy trzeba sprawdzić samodzielnie.

Opublikowano: · 5 min czytania · Fakty sprawdzono w oficjalnej dokumentacji i repozytoriach w dniu 2026-10-27. Dify szybko się zmienia, dlatego przeczytaj informacje o wydaniu (release notes) wersji, którą instalujesz.

Czego potrzebujesz na start

Przewodnik Dify o własnym hostingu podaje minimum dla samego Dify. Model potrzebuje własnej pamięci ponad to, więc obie liczby trzeba dodać. Poniższy kalkulator podaje wartość dla modelu. Dodanie jej do minimum Dify to nasza zasada orientacyjna, a nie stwierdzenie z dokumentacji Dify.

ElementCo mówi przewodnik Dify
CPUCPU >= 2 Core
PamięćRAM >= 4 GiB
Docker ComposeDify requires Docker Compose 2.24.0 or later.
Git, curl, jqPolecenie klonowania poniżej używa git, curl i jq.

Wypróbuj: Local LLM Memory Estimator

Model

Tag Ollama qwen3:8b, kwantyzacja Q4_K_M, rozmiar pobierania 5.2 GB.

Oszacowanie

Wagi modelu
4.84 GiB
KV cache
0.56 GiB
Rezerwa
1.00 GiB
Suma
6.41 GiB (6.88 GB)
Najmniejszy popularny rozmiar pamięci, który to pomieści
8 GiB

To jest oszacowanie. Nie obejmuje buforów obliczeniowych środowiska uruchomieniowego i zakłada, że każda warstwa ma ten sam kształt KV. Zanim wybierzesz plan, zmierz prawdziwe uruchomienie.

Dane modelu sprawdzono: 2026-10-26.

Źródła: Ollama library · Konfiguracja modelu (config.json) · Ollama FAQ

Wszystko działa w Twojej przeglądarce. Nic nie jest przesyłane.

Krok 1: uruchom Dify przez Docker Compose

To polecenia z przewodnika Dify o własnym hostingu. Pierwsze pobiera z GitHub najnowszy tag wydania, dzięki czemu zaczynasz od wydania, a nie od niedokończonej gałęzi. W chwili naszego sprawdzenia najnowszym wydaniem było 1.18.0 (opublikowane 2026-10-23).

KrokPolecenie
Sklonuj najnowsze wydaniegit clone --branch "$(curl -s https://api.github.com/repos/langgenius/dify/releases/latest | jq -r .tag_name)" https://github.com/langgenius/dify.git
Przejdź do folderu Dockercd dify/docker
Skopiuj plik ustawieńcp .env.example .env
Utwórz token dla backendu agentaopenssl rand -base64 32
Uruchom Difydocker compose up -d

Wpisz token wypisany przez openssl do pliku .env jako DIFY_AGENT_LOCAL_SANDBOX_AUTH_TOKEN, zanim uruchomisz Dify. Przewodnik mówi, że backend agenta i jego piaskownica (sandbox) bez niego się nie uruchamiają.

Krok 2: utwórz konto administratora

Gdy kontenery już działają, przewodnik każe najpierw otworzyć stronę inicjalizacji administratora: http://your_server_ip/install na serwerze albo http://localhost/install na własnym komputerze. Utwórz tam konto, a potem zaloguj się pod adresem http://your_server_ip.

Dokumentacja nie mówi, kto może wejść na tę stronę, zanim konto powstanie. Nasza rekomendacja, a nie stwierdzenie z dokumentów: załóż konto zaraz po uruchomieniu i przeczytaj artykuł o zabezpieczaniu serwera, zanim wystawisz Dify do internetu.

Krok 3: dodaj wtyczkę Ollama i model

W aktualnej dokumentacji Dify dostawców modeli instaluje się z Integrations > Model Provider albo z Marketplace, a następnie klika się Setup na karcie dostawcy. Nazwy menu zmieniają się między wersjami, więc poszukaj listy dostawców w swojej wersji. Strona wtyczki Ollama w Marketplace (wersja 1.0.3 w chwili naszego sprawdzenia) każe zainstalować Ollamę, uruchomić model i upewnić się, że jej lokalne API działa, zanim dodasz ją do Dify.

Oto pola wtyczki, wzięte z jej README i ze strony w Marketplace.

PoleCo wpisać
Model NameModel Ollamy, na przykład gemma3, qwen3, deepseek-r1 lub gpt-oss.
Base URLKatalog główny hosta Ollamy, http://<your-ollama-host>:11434 dla lokalnej Ollamy. Nie dodawaj /api, ponieważ wtyczka sama dopisuje /api/chat, /api/generate i /api/embed.
API KeyOpcjonalny dla lokalnej Ollamy. Wymagany tylko dla chmury Ollama.
Model TypeChat dla czatu, wywoływania narzędzi i obrazu (vision). Strona w Marketplace wymienia też embeddingi tekstu i rerank.
Model Context LengthDopasuj do okna kontekstu modelu.
Upper bound for max tokensNajwiększa wartość max tokens (num_predict), na jaką pozwala Dify.
Vision support / Function call supportWybierz Yes tylko dla modelu, który to obsługuje.
Attach Dify app_id as request headersDomyślnie wyłączone. Po włączeniu Dify dodaje nagłówki X-Dify-App-Id i X-Dify-Source do swoich wywołań Ollamy. Ollama ich nie używa.

Aby dowiedzieć się, które modele obsługują obraz (vision) i wywoływanie narzędzi, zajrzyj do artykułu o tym, co potrafią modele z biblioteki Ollamy.

Krok 4: adres, który działa z wnętrza Dockera

Dify działa w kontenerach, a Ollama działa na samym serwerze. W kontenerze localhost oznacza kontener, a nie serwer. README wtyczki mówi: użyj adresu hosta, do którego kontener Dify ma dostęp, takiego jak http://host.docker.internal:11434 albo adres IP w LAN.

Dokumentacja Dockera wyjaśnia tę nazwę. Opcja --add-host obsługuje specjalną wartość host-gateway, która zamienia się na wewnętrzny adres IP hosta, a zwyczajowo używa się do tego nazwy host.docker.internal. Dokumentacja mówi też, że Docker Desktop rozpoznaje tę nazwę automatycznie. Przykład z dokumentacji to --add-host host.docker.internal=host-gateway.

Co sprawdziliśmyWynik
Czy docker-compose.yaml Dify definiuje host.docker.internal?Nie. W pliku z gałęzi main nie znaleźliśmy ani host.docker.internal, ani wpisu extra_hosts.
Czy dokumentacja Docker Compose opisuje extra_hosts?Tak, jako mapowania nazw hostów w postaci HOSTNAME=IP, które trafiają do /etc/hosts. Strona, którą przeczytaliśmy, nie wspomina o host-gateway dla extra_hosts.
Czy Ollama nasłuchuje na adresach innych niż 127.0.0.1?Domyślnie nie. FAQ Ollamy mówi, że wiąże się z 127.0.0.1 na porcie 11434, a zmienna środowiskowa OLLAMA_HOST zmienia adres, na którym nasłuchuje.

Nasz odczyt, a nie stwierdzenie z dokumentów: na serwerze z Linuxem trzeba samemu dodać nazwę hosta albo użyć adresu serwera, a może też być konieczna zmiana adresu, na którym nasłuchuje Ollama. Nie testowaliśmy tej kombinacji. Jeśli zmienisz OLLAMA_HOST, do portu 11434 będzie można się dostać z innych maszyn, a Ollama nie ma własnego hasła, więc zamknij ten port na zewnątrz w zaporze sieciowej (firewall). Ustawienia opisują artykuły o instalacji Ollamy i o postawieniu przed nią nginx.

Krok 5: embeddingi i to, czego wtyczka nie robi

Strona wtyczki w Marketplace mówi, że obsługuje ona streaming, thinking, vision, wywoływanie narzędzi i embeddingi tekstu oraz że wektory embeddingów są L2-normalized. Dla embeddingów dodajesz drugi model typu text embeddings, z modelem embeddingów z biblioteki Ollamy.

Strona wymienia też to, czego wtyczka nie obejmuje. Ollama nie ma natywnego endpointu rerank, więc model rerank wymaga usługi rerank zgodnej z OpenAI. Wyszukiwanie w sieci również nie jest dołączone. Potrzebuje osobnej wtyczki narzędziowej Dify albo zewnętrznego przepływu pracy (workflow).

Gdy połączenie się nie udaje

  • Uruchom ollama ps i sprawdź, czy model jest załadowany, a na serwerze otwórz http://127.0.0.1:11434, aby zobaczyć, czy Ollama odpowiada.
  • Sprawdź Base URL. To katalog główny hosta, z portem i bez /api.
  • Sprawdź, czy kontenery Dify mają dostęp do tego adresu. Dokumentacja Dify mówi, że jego żądania wychodzące są kierowane przez proxy, które blokuje wewnętrzne i prywatne zakresy IP. Strona wymienia węzły HTTP i pobieranie obrazów, a nie mówi, czy żądania dostawców modeli idą tą samą drogą. Jeśli używasz adresu prywatnego i został odrzucony, to jedno z miejsc do sprawdzenia.
  • Przeczytaj logi kontenerów poleceniem docker compose logs. Nie znaleźliśmy w dokumentacji listy komunikatów o błędach.

Aktualizowanie Dify

Przewodnik mówi, że kroki aktualizacji różnią się między wydaniami, więc postępuj według przewodnika aktualizacji dla wersji, do której przechodzisz; znajdziesz go na stronie Dify Releases. Po aktualizacji porównaj .env.example ze swoim .env pod kątem nowych lub zmienionych zmiennych. Jeśli zmieniałeś docker-compose.yaml, zastosuj swoje zmiany ponownie w pliku nowego wydania, ponieważ wydanie może dodać wymagane usługi.

Źródła

Czytaj dalej