Cómo instalar y configurar Dify con Docker paso a paso

Última actualización: 24/07/2026

  • Dify es una plataforma de código abierto diseñada para crear aplicaciones basadas en LLM con un motor RAG integrado.
  • El despliegue a través de Docker Compose es el método recomendado para gestionar sus múltiples microservicios y bases de datos.
  • Permite la integración flexible de diversos proveedores de modelos como OpenAI, Anthropic y la ejecución local mediante Ollama.
  • Incluye herramientas avanzadas de orquestación de flujos de trabajo, gestión de prompts y una API robusta para desarrolladores.
instalar Dify con Docker

Si quieres crear aplicaciones de inteligencia artificial sin tener que programar toda la infraestructura desde cero, Dify es una de las plataformas más completas que puedes instalar en tu propio servidor. Su interfaz visual permite construir chatbots, agentes, flujos de trabajo y sistemas de generación aumentada por recuperación sin abandonar el navegador.

Dify combina funciones de Backend as a Service, gestión de modelos y LLMOps. Esto permite diseñar la aplicación, conectar proveedores de inteligencia artificial, cargar documentos, revisar registros y publicar una API desde un mismo entorno.

La edición Community puede autohospedarse mediante Docker Compose. De este modo, los proyectos, configuraciones y archivos se almacenan en una infraestructura controlada por el usuario. Sin embargo, autohospedar Dify no significa que todos los datos permanezcan automáticamente en local: si conectas modelos o herramientas externas, la información necesaria para realizar las peticiones se enviará a esos servicios.

Requisitos para instalar Dify con Docker

Requisitos para instalar Dify con Docker

Antes de comenzar, debes asegurarte de que Docker dispone de recursos suficientes. Dify ejecuta varios servicios simultáneamente, entre ellos la API, los trabajadores de tareas, el frontend, PostgreSQL, Redis, Nginx, el entorno aislado y la base de datos vectorial seleccionada.

Para una instalación con Docker Desktop en Windows o macOS, la documentación oficial recomienda asignar como mínimo:

  • Dos CPU virtuales.
  • 8 GiB de memoria RAM.
  • Docker Compose 2.24.0 o posterior.

En Linux se necesita Docker 19.03 o posterior y Docker Compose 2.24.0 o superior. Los requisitos mínimos pueden variar en otros métodos de despliegue, pero disponer de más memoria resulta aconsejable si se van a procesar documentos extensos o atender varias peticiones simultáneas.

También necesitarás Git, curl y jq si quieres utilizar el comando oficial que consulta la API de GitHub y clona automáticamente la última versión estable. El espacio necesario en disco dependerá de los documentos, registros, imágenes y bases de datos almacenados. Además, si ejecutas modelos locales, tendrás que reservar espacio adicional para sus archivos.

En Windows, Dify debe desplegarse mediante Docker Desktop con WSL 2. Conviene guardar el código y los datos dentro del sistema de archivos de Linux para evitar problemas de permisos y obtener un rendimiento más estable.

Cómo descargar y desplegar Dify

Cómo descargar y desplegar Dify

Para descargar automáticamente la última versión estable de Dify, abre una terminal y ejecuta:

git clone --branch "$(curl -s https://api.github.com/repos/langgenius/dify/releases/latest | jq -r .tag_name)" https://github.com/langgenius/dify.git

Después, entra en el directorio que contiene la configuración de Docker:

cd dify/docker

Copia el archivo de variables de ejemplo para crear la configuración local:

cp .env.example .env

En Windows PowerShell, puedes utilizar este comando equivalente:

Copy-Item .env.example .env

La instalación predeterminada puede iniciarse sin modificar todas las variables. No obstante, antes de exponer Dify en Internet resulta imprescindible revisar las contraseñas, las claves internas, las direcciones públicas y la configuración del proxy.

Contenido exclusivo - Clic Aquí  Cómo trabajar sin conexión con AppFlowy y sus ventajas frente a Notion

Para iniciar los contenedores, ejecuta:

docker compose up -d

La primera puesta en marcha puede tardar varios minutos porque Docker tendrá que descargar todas las imágenes necesarias. Puedes comprobar el estado de los servicios mediante:

docker compose ps

Si algún contenedor se detiene o no termina de iniciarse, consulta sus registros con:

docker compose logs

También puedes limitar la salida a un servicio concreto:

docker compose logs api docker compose logs worker docker compose logs nginx

Cuando el despliegue esté listo, abre en el navegador:

http://localhost/install

Desde esta página podrás crear la cuenta inicial de administrador. Después del primer registro, el acceso normal se realizará desde la dirección principal de la instalación.

Cómo configurar las variables de entorno

El archivo .env contiene las variables esenciales utilizadas por el despliegue. Desde él se pueden ajustar las claves internas, PostgreSQL, Redis, almacenamiento, dominios públicos, correo electrónico y otros componentes.

Las configuraciones avanzadas y específicas de determinados proveedores se encuentran en archivos de ejemplo dentro del directorio docker/envs/. Solo debes copiar y activar aquellos que necesites, evitando añadir variables innecesarias al archivo principal.

Dify utiliza PostgreSQL como base de datos relacional y Redis para caché y colas de tareas. Puedes emplear los servicios incluidos en Docker Compose o conectarlos a servidores externos, siempre que configures correctamente sus direcciones y credenciales.

También es posible elegir una base de datos vectorial mediante la variable:

VECTOR_STORE=weaviate

El proyecto admite diferentes alternativas, como Weaviate, Qdrant, Milvus y pgvector, además de otras opciones recogidas en el directorio envs/vectorstores/.

Esta elección conviene realizarla antes de comenzar a indexar documentos. Si ya existen conjuntos de datos, no debes cambiar únicamente la variable y reiniciar los contenedores, porque los vectores almacenados en el sistema anterior no se trasladarán automáticamente. Para conservarlos tendrás que seguir el procedimiento de migración correspondiente.

Cómo conectar proveedores y modelos de inteligencia artificial

Dify no incluye por defecto un modelo capaz de responder a las peticiones. Después de crear la cuenta de administrador tendrás que instalar y configurar al menos un proveedor.

Accede al apartado de Marketplace o Proveedores de modelos, instala la integración correspondiente y añade las credenciales solicitadas. Dependiendo del proveedor, podrás configurar modelos de lenguaje, generación de imágenes, reranking, voz o embeddings.

Contenido exclusivo - Clic Aquí  Cómo funciona el anti phishing de 1password

Es importante distinguir entre ellos. Un modelo de chat puede responder al usuario, mientras que un modelo de embeddings transforma los documentos en vectores para construir una base de conocimientos. Si quieres utilizar RAG, tendrás que configurar ambos tipos cuando el proveedor elegido no cubra todas las funciones.

Las claves introducidas se aplican al espacio de trabajo y las peticiones se facturan de acuerdo con las condiciones del proveedor. Conviene restringir el acceso al panel de administración y establecer límites de consumo en las cuentas externas.

Cómo conectar Dify con Ollama

Cómo conectar Dify con Ollama

Ollama permite ejecutar determinados modelos en el propio ordenador o servidor. No es obligatorio incorporarlo al archivo docker-compose.yaml de Dify: puedes instalarlo en el sistema anfitrión y conectar ambos servicios mediante la red.

Primero, instala Ollama y descarga el modelo que quieras utilizar. Por ejemplo:

ollama pull llama3.1

Después, instala el proveedor de Ollama desde el Marketplace de Dify y configura el nombre del modelo y la dirección del servidor.

La URL correcta depende de dónde se esté ejecutando Ollama:

  • Si Dify y Ollama están en la misma red de Docker, puedes utilizar el nombre del servicio, como http://ollama:11434.
  • Con Docker Desktop, puede utilizarse habitualmente http://host.docker.internal:11434.
  • En Linux puede ser necesario utilizar la dirección del puente de Docker o configurar expresamente el acceso al anfitrión.

No debes introducir http://localhost:11434 en Dify si Ollama se ejecuta fuera de sus contenedores. Desde el contenedor, localhost apunta al propio contenedor y no al sistema anfitrión.

También debes comprobar que Ollama escucha en una interfaz accesible desde Docker. Si está limitado a 127.0.0.1, Dify podría no establecer la conexión. No expongas el puerto 11434 directamente en Internet sin autenticación, un proxy adecuado y reglas de red.

El rendimiento dependerá del modelo, la cuantización y los recursos disponibles. Dify puede funcionar con pocos recursos, pero ejecutar un modelo local requiere memoria RAM o VRAM adicional que no está incluida en los requisitos básicos de la plataforma.

Cómo crear una base de conocimientos en Dify

Una vez configurados los modelos, puedes crear una base de conocimientos y cargar documentos como PDF, Markdown, TXT o DOCX. Dify extraerá el contenido, lo dividirá en fragmentos y generará representaciones vectoriales mediante el modelo de embeddings elegido.

Durante este proceso tendrás que decidir aspectos como:

  • El método de indexación.
  • El tamaño y la superposición de los fragmentos.
  • El modelo de embeddings.
  • La estrategia de recuperación.
  • El número de resultados recuperados.
  • La utilización de un modelo de reranking.

No existe un tamaño de fragmento perfecto para todos los documentos. Los fragmentos demasiado pequeños pueden perder contexto, mientras que los excesivamente grandes consumen más tokens y pueden introducir información irrelevante.

Contenido exclusivo - Clic Aquí  Cómo Hacer una Aplicación para Celular

Después de indexar el contenido, puedes conectar la base de conocimientos a un chatbot, agente o flujo de trabajo. También es posible publicar la aplicación mediante la interfaz web o consumirla desde otro programa utilizando las API proporcionadas por Dify.

Cómo actualizar Dify sin perder los datos

Actualizar una instalación autohospedada requiere algo más que descargar imágenes nuevas. Antes de comenzar, consulta las notas de la versión porque algunas actualizaciones pueden incorporar migraciones de base de datos o cambios en la configuración.

Como mínimo, debes conservar:

  • El archivo docker/.env.
  • Los archivos opcionales creados dentro de docker/envs/.
  • Todo el directorio docker/volumes.

El directorio de volúmenes contiene los datos persistentes del despliegue con Docker Compose. La documentación también propone crear una copia completa y fechada del directorio de Dify antes de actualizar:

cp -r dify "dify.bak.$(date +%Y%m%d%H%M%S)"

Después tendrás que descargar la versión deseada del repositorio, revisar los cambios en los archivos de ejemplo, conservar tus variables personalizadas y seguir las instrucciones específicas de esa versión. Finalmente, descarga las imágenes y vuelve a iniciar los servicios:

docker compose pull docker compose up -d

Una vez completada la actualización, comprueba el estado con docker compose ps y revisa los registros de los contenedores que presenten errores.

Copiar solo una exportación de PostgreSQL puede no ser suficiente. Dify también guarda archivos, datos de la base vectorial y configuraciones persistentes. Por eso, en despliegues con Docker Compose, la copia del directorio completo de volúmenes es la opción más segura.

Recomendaciones para utilizar Dify en producción

La dirección local sirve para realizar pruebas, pero no es adecuada para publicar el servicio directamente en Internet. En una instalación de producción deberías configurar un dominio, HTTPS, contraseñas robustas, copias periódicas y reglas de red que limiten los puertos accesibles.

También conviene revisar los permisos del entorno aislado donde se ejecuta código, actualizar regularmente las imágenes y restringir el acceso a PostgreSQL, Redis y la base vectorial. Estos servicios no deberían quedar expuestos públicamente.

El autohospedaje proporciona un mayor control sobre los archivos y la infraestructura, pero la privacidad final dependerá de todos los componentes conectados. Si utilizas OpenAI, Anthropic, Google u otro proveedor remoto, las peticiones viajarán hasta sus servidores. Para mantener el procesamiento dentro de tu red tendrás que emplear modelos locales y evitar herramientas externas que transmitan información.

Instalar Dify mediante Docker Compose permite disponer de un entorno completo para crear aplicaciones, agentes y sistemas RAG desde una interfaz visual. La configuración inicial es relativamente sencilla, pero la seguridad, las copias de respaldo y el mantenimiento siguen siendo responsabilidad del administrador.