Instalarea Dify Self-Hosted prin Docker Compose în Dify.ai & Enterprise RAG

Infrastructură și DevOps Dify Community Edition

Ghid complet de implementare on-premise: configurarea containerelor Docker, conectarea bazelor de date și securizarea datelor interne.

Sintaxă & invocare
docker compose up -d în dify/docker

Pentru organizațiile care operează în sectoare reglementate (medical, bancar, guvernamental) sau care dețin date strict confidențiale, trimiterea documentelor către platforme cloud terțe este interzisă. Dify oferă o versiune completă Self-Hosted Community Edition sub licență open-source.

Stack-ul Dify este containerizat profesional prin Docker Compose și include toate componentele necesare: proxy Nginx pentru rutare web, server API Python Flask/FastAPI, frontend Next.js, worker asincron Celery pentru procesarea sarcinilor grele, bază de date PostgreSQL, broker Redis și opțiuni de stocare vectorială (Weaviate sau pgvector).

Prin conectarea instanței Dify locale la servere de inferență locale (cum ar fi Ollama sau vLLM), întreaga platformă funcționează 100% offline (air-gapped), garantând că niciun byte de date nu părăsește rețeaua internă a companiei.

Sintaxă, opțiuni și concepte cheie

Opțiune / Concept Descriere practică
docker compose up -d Comanda de pornire în fundal a tuturor celor 9 containere de servicii.
.env configuration Fișierul central de mediu unde se configurează cheile de criptare SECRET_KEY și credențialele DB.
VECTOR_STORE=weaviate Specificarea bazei de date vectoriale interne din compose.
Air-Gapped Operation Capacitatea de a rula fără acces la internet folosind exclusiv modele locale.

Exemple practice și cod

Exemplul 1: Instalarea și pornirea instanței Dify pe un server Ubuntu Linux

Comenzile oficiale de clonare și lansare a serviciilor.

# 1. Clonăm depozitul oficial Dify:
$ git clone https://github.com/langgenius/dify.git
$ cd dify/docker

# 2. Copiem fișierul de configurare a mediului:
$ cp .env.example .env

# 3. Pornim containerele Docker:
$ docker compose up -d

# Verificăm că toate containerele rulează sănătos:
$ docker compose ps
NAME                  IMAGE                      STATUS
docker-api-1          langgenius/dify-api        Up (healthy)
docker-web-1          langgenius/dify-web        Up (healthy)
docker-worker-1       langgenius/dify-api        Up
docker-db-1           postgres:15-alpine         Up
docker-redis-1        redis:6-alpine             Up

# Accesăm panoul de control în browser: http://server-ip/install

Rezultat & Impact

Platformă completă enterprise activă și gata de lucru în sub 5 minute.

Greșeli frecvente și bune practici

  • Păstrarea cheilor implicite `SECRET_KEY` din `.env.example` pe servere expuse în rețea publică, ceea ce permite decriptarea tokenilor de sesiune.
  • Omiterea configurării volumelor persistente pe disc pentru containerul PostgreSQL și directorul de upload fișiere, riscând pierderea datelor la un simplu `docker compose down`.

Ghiduri și noțiuni înrudite