SSD Nodes Learn
मार्गदर्शक Matt Connorद्वारे Matt Connor · अपडेटेड 2026-07-24

Dify VPS वर Docker Compose ने कसे इंस्टॉल करावे

Dify साठी किमान 4 GB RAM असलेला VPS वापरा. .env फाईलमध्ये सर्व secrets अपडेट करा आणि सुरक्षेसाठी /install वर जाऊन लगेच admin account तयार करा.

Dify काय आहे, आणि तुम्ही काय चालवण्यासाठी तयार होत आहात

Dify हे large language models वर आधारित applications तयार करण्यासाठी एक self-hostable platform आहे. यामध्ये chat apps, agents, आणि retrieval pipelines डिझाइन करण्यासाठी web interface, स्वतःच्या code मधून them call करण्यासाठी API, आणि prompts, datasets, आणि model keys व्यवस्थापित करण्यासाठी एक मध्यवर्ती ठिकाण मिळते. जेव्हा एखादी लहान टीम सर्व API keys वेगवेगळ्या scripts मध्ये विखुरण्याऐवजी एका shared private base वर काम करू इच्छिते, तेव्हा हे एक उपयुक्त tool ठरते.

हे स्वतः चालवणे म्हणजे अनेक घटक (moving parts) चालवणे होय. Dify हे Docker containers च्या संचाच्या स्वरूपात येते: एक API server, एक background worker, एक web frontend, एक Postgres database, एक Redis cache, आणि एक vector database; हे सर्व Docker Compose द्वारे एकमेकांशी जोडलेले असतात. हे केवळ एका single binary पेक्षा मोठे आहे, परंतु Compose सर्व जोडणी हाताळते, आणि काही GB RAM असलेला VPS याला सहजपणे चालवू शकतो.

Dify मध्ये तुमचे model API keys आणि अनेकदा retrieval साठी लोड केलेले private documents असतात, म्हणून ज्या सर्व्हरवर ते चालते, त्याला पहिल्या मिनिटापासूनच संवेदनशील (sensitive) मानावे. हा guide ते install करतो आणि त्यानंतर कोणत्याही secrets असलेल्या service प्रमाणेच त्याचे hardening करतो.

Prerequisites

तुम्हाला Ubuntu 24.04 चालवणाऱ्या VPS ची गरज आहे ज्यामध्ये Docker आणि Docker Compose plugin इंस्टॉल केलेले आहे, आणि sudo किंवा docker group चे membership असलेला user आवश्यक आहे. जर Docker तुमच्यासाठी नवीन असेल, तर the basics of Docker Compose on a VPS मध्ये install आणि या guide मध्ये गृहीत धरलेले core commands दिले आहेत. सर्व्हरला पॉइंट केलेला domain name असणे फायदेशीर आहे, कारण तुम्हाला केवळ IP address ऐवजी Dify च्या समोर TLS वापरायला आवडेल.

Step 1: Get Dify and its Compose files

Dify आपली Docker setup मुख्य repository मध्ये ठेवते. ती clone करा आणि docker directory मध्ये जा:

git clone https://github.com/langgenius/dify.git
cd dify/docker
cp .env.example .env

.env फाईल ही संपूर्ण configuration आहे. काहीही सुरू करण्यापूर्वी ती वाचा. सर्वात महत्त्वाच्या किमती (values) त्या आहेत ज्या passwords आणि secrets सेट करतात: SECRET_KEY, Postgres password, आणि Redis password. example file मध्ये placeholder values असतात; ते तसेच ठेवणे ही self-hosted Dify comprometित होण्याची सर्वात सामान्य पद्धत आहे. एक real secret key तयार करा:

openssl rand -base64 42

ती SECRET_KEY मध्ये पेस्ट करा, आणि फाईलमधील प्रत्येक password field साठी एक strong, unique value सेट करा.

Step 2: Start it

Stack सुरू करा:

docker compose up -d

पहिल्या वेळी अनेक images pull केल्या जातात आणि database initialize होतो, म्हणून थोडा वेळ द्या. containers 'healthy' आहेत की नाही ते तपासा:

docker compose ps

प्रत्येक service running वाचू शकते. Dify बाय डिफॉल्ट port 80 वर bundled nginx container द्वारे आपले web interface सर्व्ह करते. http://YOUR_SERVER/install वर पहिल्या भेटीत तुम्ही admin account तयार करता. कंटेनर्स healthy झाल्यावर आणि port वर इतर काहीही पोहोचण्यापूर्वी लगेच हे करा, कारण जोपर्यंत तो account अस्तित्वात येत नाही, तोपर्यंत page लोड करणारी कोणतीही व्यक्ती तो claim करून तुमच्या instance वर ताबा मिळवू शकते.

Step 3: Do not expose it raw. Put TLS and a firewall in front

येथेच बहुतेक quick installs थांबतात आणि बहुतेक incidents सुरू होतात. Dify चा स्वतःचा nginx प्रत्येक interface वर port 80 वर plain text मध्ये listen करतो. तुम्हाला तुमचे admin login आणि model keys plain HTTP वर पाठवायचे नाहीत, आणि तुम्हाला internal services बाहेरून reachable ठेवायच्या नाहीत.

फक्त SSH आणि web traffic ला परवानगी देणाऱ्या default-deny firewall ने सर्व्हर सुरक्षित करा:

sudo ufw default deny incoming
sudo ufw allow 22/tcp
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw enable

लक्षात ठेवा की जो firewall फक्त IPv4 कव्हर करतो, तो IPv6 वर देखील तेच ports open ठेवू शकतो, हा एक IPv6 firewall gap आहे ज्यामध्ये अनेक self-hosters अडकतात. दोन्ही stacks फिल्टर झाले आहेत याची खात्री करा.

TLS साठी, सर्वात सोपा मार्ग म्हणजे Dify चा web port loopback ला bind करणे आणि समोर Let's Encrypt certificate सह reverse proxy चालवणे, जेणेकरून सार्वजनिक इंटरनेटवर फक्त HTTPS बोलणारा proxy असेल. Dify च्या .env मुळे तुम्हाला exposed port बदलता येतो; तो 127.0.0.1 वर bind करण्यासाठी सेट करा आणि तुमच्या proxy ला त्याकडे पॉइंट करा. running an AI agent safely on a VPS मधील agent-hardening कल्पना येथे देखील लागू होतात: moving parts ला loopback वर ठेवा, फक्त जे आवश्यक आहे तेच public करा, आणि एक hardened front door TLS वापरू द्या.

Step 4: Keep it patched

Dify वेगाने विकसित होत आहे आणि updates मध्ये security fixes समाविष्ट असतात. Update करण्यासाठी docker directory मधून pull आणि restart करणे आवश्यक आहे:

git pull
docker compose pull
docker compose up -d

मोठ्या version jump पूर्वी release notes वाचा, कारण Dify कधीकधी releases दरम्यान .env schema बदलू शकते, आणि तुम्ही सेट न केलेले नवीन variable कंटेनर सुरू होण्यापासून रोखू शकते.

Step 5: Back up what you cannot regenerate

Dify box वरील दोन गोष्टी अपूरणीय आहेत: Postgres database, ज्यामध्ये तुमचे apps, users, आणि settings असतात, आणि volume जो अपलोड केलेले documents आणि vector index स्टोअर करतो. दोन्ही docker directory मधील Docker volumes अंतर्गत असतात. त्यांचे वेळापत्रकानुसार snapshots घ्या आणि ते snapshots सर्व्हरच्या बाहेर कॉपी करा. Model API key पुन्हा मिळवता येऊ शकतो; परंतु तुम्ही एक आठवडा खर्च करून तयार केलेले app पुन्हा तयार करता येणार नाही.

अधिक autonomous, code-running agent साठी, self-hosting Agent Zero पहा, आणि building your own AI agent on a VPS मध्ये सर्वकाही आधारभूत गोष्टी कव्हर केल्या आहेत.

FAQ

What are the system requirements to self-host Dify?

Dify हे सुमारे सहा कंटेनर्सच्या Docker Compose stack म्हणून चालते, त्यामुळे किमान 2 GB RAM असलेला VPS प्लॅन करा, आदर्शपणे 4 GB, त्यासोबत काही CPU cores आणि तुमच्या अपलोड केलेल्या documents आणि vector index साठी पुरेशी disk space आवश्यक आहे. Memory pressure database आणि vector store कडून येतो, Dify कडून नाही.

Is it safe to expose Dify directly on port 80?

नाही. Dify चा bundled web server plain HTTP वर listen करतो, आणि तो तुमचे admin login आणि model API keys हाताळतो. समोर Let's Encrypt certificate सह reverse proxy ठेवा, Dify चा स्वतःचा port loopback ला bind करा, आणि फक्त HTTPS proxy ला इंटरनेटवर येऊ द्या. यासोबत IPv4 आणि IPv6 दोन्ही कव्हर करणारा default-deny firewall वापरा.

How do I update a self-hosted Dify?

docker directory मधून, git pull चालवा, त्यानंतर नवीन images fetch करण्यासाठी आणि restart करण्यासाठी docker compose pull आणि docker compose up -d चालवा. प्रथम release notes वाचा, कारण Dify कधीकधी versions मध्ये नवीन .env variables जोडते, आणि एक missing variable कंटेनर सुरू होण्यापासून रोखू शकते.

What is the first thing to do after installing Dify?

/install ला भेट द्या आणि लगेच admin account तयार करा. जोपर्यंत तो account अस्तित्वात येत नाही, तोपर्यंत जो कोणी page पर्यंत पोहोचू शकतो तो तो claim करू शकतो. कंटेनर्स healthy झाल्यावर आणि तुम्ही firewall जगासाठी उघडण्यापूर्वी लगेच हे सेट करा.