Self-hosting Inferable Control Plane
Download Docker Compose definition
curl
to download the file:Define environment variables
docker-compose.yml
, most environment variables have defaults but the following need to be provided explicitly:MANAGEMENT_API_SECRET
(This can be generated using openssl rand -hex 32
, take note of the value)ANTHROPIC_API_KEY
(With access to claude-3-5-sonnet
/ claude-3-haiku
- our default reasoning models)COHERE_API_KEY
(With access to embed-english-v3
- our default embedding model)Start Docker Compose
http://localhost:4000
and the following auxiliary resources:Manage via the CLI
INFERABLE_API_ENDPOINT
to target your instance, rather than Inferable Cloud.See the section on headless mode for more details.Register tools and workflows
baseUrl
option to initialize the client.Variable | Description | Required |
---|---|---|
MANAGEMENT_API_SECRET | A deployment secret for the management API. | Yes (If running in headless mode) |
ANTHROPIC_API_KEY | API key for the Anthropic API. | Yes (If Bedrock is not available) |
COHERE_API_KEY | API key for the Cohere API. | Yes (If Bedrock is not available) |
BEDROCK_AVAILABLE | If set to true , Bedrock will be used as the model provider (You must also provide AWS credentials). | No |
DATABASE_URL | The connection string for the PostgreSQL database. | Yes |
DATABASE_SSL_DISABLED | If set to true , SSL will be disabled for the PostgreSQL database. | No |
REDIS_URL | The connection string for the Redis instance. | Yes |
APP_ORIGIN | The origin of the Inferable Web UI for CORS. | No |
JWKS_URL | The URL of the Clerk JWKS url. | No |
CLERK_SECRET_KEY | The Clerk secret key. | No |
HYPERDX_API_KEY | API key for sending telemetry to Hyperdx. | No |
ROLLBAR_ACCESS_TOKEN | API key for sending error events to Rollbar. | No |
POSTHOG_API_KEY | API key for sending analytic events to Posthog. | No |
POSTHOG_HOST | The host for sending analytic events to Posthog. | No |
EE_DEPLOYMENT | Enable startup check for availability of all features. | No |
MANAGEMENT_API_SECRET
is used instead.
The MANAGEMENT_API_SECRET
should only be used for managing clusters. You can use it to create API Keys which are used by the SDK to register tools.