Favicon of Dreamfactory

Dreamfactory

Generate governed REST APIs for any data source without coding. Get built-in RBAC, API keys, and live OpenAPI docs. Run on-premises or in the cloud.

Instantly create fully documented and secure REST APIs from any data source without writing a single line of code. This platform allows you to connect to SQL databases, NoSQL databases, cloud storage, and even legacy systems, generating a live OpenAPI specification for immediate use. It is designed to run anywhere, including on-premises, in the cloud, or in air-gapped environments, giving you complete control over your data infrastructure.

The platform is built with security as a priority, enabling you to protect your data and control access with precision. Key capabilities include:

  • Governed Access Control: Implement role-based access control (RBAC), identity passthrough, and field-level security to ensure applications and AI agents only access authorized data.
  • Broad Connectivity: Point the tool at any database, warehouse, or SaaS application to instantly generate APIs from existing schemas.
  • AI and LLM Enablement: Provide a secure data layer for AI agents and large language models to query your enterprise data without direct database access, keeping credentials and infrastructure protected.

Directory Structure

dreamfactory
df-storage
mysql-data
redis-data
.env
docker-compose.yml

docker-compose.yml

services:
  dreamfactory:
    image: dreamfactorysoftware/df-docker:latest
    container_name: dreamfactory
    ports:
      - "8080:80"
    environment:
      - DB_CONNECTION=mysql
      - DB_HOST=mysql
      - DB_PORT=3306
      - DB_DATABASE=dreamfactory
      - DB_USERNAME=dreamfactory
      - DB_PASSWORD=${DB_PASSWORD}
      - CACHE_DRIVER=redis
      - REDIS_HOST=redis
      - APP_KEY=${APP_KEY}
      - DF_SETUP_ADMIN_EMAIL=${ADMIN_EMAIL}
      - DF_SETUP_ADMIN_PASSWORD=${ADMIN_PASSWORD}
    volumes:
      - ./df-storage:/opt/dreamfactory/storage
    depends_on:
      - mysql
      - redis
    restart: unless-stopped

  mysql:
    image: mysql:8.0
    container_name: dreamfactory-mysql
    environment:
      - MYSQL_ROOT_PASSWORD=${MYSQL_ROOT_PASSWORD}
      - MYSQL_DATABASE=dreamfactory
      - MYSQL_USER=dreamfactory
      - MYSQL_PASSWORD=${DB_PASSWORD}
    volumes:
      - ./mysql-data:/var/lib/mysql
    restart: unless-stopped

  redis:
    image: redis:alpine
    container_name: dreamfactory-redis
    volumes:
      - ./redis-data:/data
    restart: unless-stopped

.env

APP_KEY=SomeRandomStringOf32Characters!!
ADMIN_EMAIL=admin@example.com
ADMIN_PASSWORD=super_secret_admin_password
DB_PASSWORD=super_secret_db_password
MYSQL_ROOT_PASSWORD=super_secret_root_password
Categories:

Share:

Ad
Favicon

 

  
 

Similar to Dreamfactory

Favicon

 

  
  
Favicon

 

  
  
Favicon