Deploying Defog On-Prem for the Enterprise
Defog's Enterprise Edition is designed to be deployed on-premises, behind your firewall, and integrated with your existing security infrastructure. If you use the Enterprise Edition, you can deploy Defog On-Prem to ensure that no network calls are ever made outside your network.
This guide will walk you through the steps to deploy Defog On-Prem in your environment.
Prerequisites
Architecture
Deployment
In the defog-docker and defog-backend images, you will need to set the following environment variables in the docker-compose file:
INTERNAL_DB
: This represents the internal database that you uses to store metadata, golden queries, and user feedback. This can be any SQL database that supports SQLAlchemy. Specifically, this can be any of the following:- postgres
- sqlite
- sqlserver
DEFOG_DBHOST
: This is the hostname of the database that you want to use for Defog. This is typically an IP address or a hostname.DEFOG_DBNAME
: This is the name of the database that you want to use for Defog. This database should be created in theINTERNAL_DB
database.DEFOG_DBUSER
: This is the username that you want to use to connect to theDEFOG_DBNAME
database.DEFOG_DBPASS
: This is the password that you want to use to connect to theDEFOG_DBNAME
database.DEFOG_DBPORT
: This is the port that theDEFOG_DBNAME
database is open on.
For each of the images, you will need to build the docker image, and then deploy it. You can find the instructions for building and deploying each of the images in the respective repositories. Running docker compose up --build
in each image directory will be sufficient to deploy the images.
API Access and Documentation
Each endpoint in the docker image has a corresponding API endpoint that you can access. You can find the API documentation for each of the images in the respective repositories, by navigating to the /docs
endpoint. Here, you will find the documentation for each of the endpoints in the OpenAPI format inside a Swagger collection.