~/ / 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.
| Element | Co mówi przewodnik Dify |
|---|---|
| CPU | CPU >= 2 Core |
| Pamięć | RAM >= 4 GiB |
| Docker Compose | Dify requires Docker Compose 2.24.0 or later. |
| Git, curl, jq | Polecenie klonowania poniżej używa git, curl i jq. |
Wypróbuj: Local LLM Memory Estimator
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).
| Krok | Polecenie |
|---|---|
| Sklonuj najnowsze wydanie | git 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 Docker | cd dify/docker |
| Skopiuj plik ustawień | cp .env.example .env |
| Utwórz token dla backendu agenta | openssl rand -base64 32 |
| Uruchom Dify | docker 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.
| Pole | Co wpisać |
|---|---|
| Model Name | Model Ollamy, na przykład gemma3, qwen3, deepseek-r1 lub gpt-oss. |
| Base URL | Katalog 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 Key | Opcjonalny dla lokalnej Ollamy. Wymagany tylko dla chmury Ollama. |
| Model Type | Chat dla czatu, wywoływania narzędzi i obrazu (vision). Strona w Marketplace wymienia też embeddingi tekstu i rerank. |
| Model Context Length | Dopasuj do okna kontekstu modelu. |
| Upper bound for max tokens | Największa wartość max tokens (num_predict), na jaką pozwala Dify. |
| Vision support / Function call support | Wybierz Yes tylko dla modelu, który to obsługuje. |
| Attach Dify app_id as request headers | Domyś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śmy | Wynik |
|---|---|
| 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
- Dify documentation: Deploy with Docker Compose
- Dify documentation: Model providers
- Dify documentation: Environment variables
- Dify official plugins: Ollama plugin README
- Dify Marketplace: Ollama plugin
- Dify repository: docker-compose.yaml
- Docker documentation: docker container run (--add-host)
- Docker documentation: Compose services (extra_hosts)
- Ollama documentation: FAQ
Czytaj dalej
- Lokalny LLM bez drogiego komputera: poradnik dla początkujących, jak użyć VPSNie masz mocnego komputera? Wynajmij VPS i uruchom mały lokalny LLM z poziomu przeglądarki: sześć kroków od oszacowania pamięci po chroniony ekran czatu, z uczciwie opisanymi ograniczeniami.
- nginx przed Ollamą: uwierzytelnianie podstawowe, HTTPS i ustawienia dla strumieniowaniaBezpieczny dostęp do Ollamy z zewnątrz: nginx jako proxy, uwierzytelnianie podstawowe, HTTPS, ustawienia strumieniowania i limitów czasu oraz reguła zapory sieciowej, na podstawie oficjalnej dokumentacji.
- Open WebUI na VPS: uruchom go w Dockerze i połącz z OllamaUruchom Open WebUI w Dockerze i połącz go z Ollama na własnym serwerze: polecenia, pierwsze konto, dwa typy połączenia i aktualizacja.
- Wywołanie lokalnego modelu z własnego kodu: ustrukturyzowane odpowiedzi i API zgodne z OpenAI w OllamaOgranicz odpowiedź lokalnego modelu za pomocą JSON Schema i wywołuj Ollama z klientów w stylu OpenAI: co mówi oficjalna dokumentacja i czego nie obsługuje.