Self-Hosting
Deploy and manage Sling Platform in your own infrastructure
Self-hosting is available with the Advanced plan. This feature allows you to deploy the entire Sling Platform within your private network for full control and security. Start your 10-day trial at https://dash.slingdata.io/self-platform, no credit card needed!
Overview
Self-hosting Sling Platform enables organizations to:
Maintain complete control over data and infrastructure
Meet strict compliance and security requirements
Deploy in air-gapped or private environments
Customize deployment configurations
The slingdata/sling-platform image provides a self-hosted Sling data platform for managing data pipelines, connections, and agents.
Quick Start
Run below and access on http://localhost:7878:
docker run -d \
-p 7878:7878 \
-p 4443:4443 \
-e SLING_PLATFORM_LICENSE="your-license-key" \
-e SLING_PLATFORM_ENCRYPTION_KEY="your-32-char-encryption-key" \
-e SLING_PLATFORM_ADMIN_CREDENTIALS='{"email":"[email protected]","password":"your-secure-password"}' \
-v sling-platform-data:/home/sling \
slingdata/sling-platform:latestRequired Environment Variables
SLING_PLATFORM_LICENSE- Your Sling Platform license key. This can be either a 36-character UUID for cloud-verified licenses or an offline license token for air-gapped environments. Obtain a trial key from https://dash.slingdata.io/self-platform (no credit card needed).SLING_PLATFORM_ENCRYPTION_KEY- A 32-character encryption key used to encrypt sensitive data like connection credentials. Generate a secure random string.SLING_PLATFORM_ADMIN_CREDENTIALS- JSON payload containing the initial admin user credentials. needemailandpasswordkeys.
Air-Gapped/Offline License: By default, license tokens are validated through CloudFlare's global network for high reliability and fast response times. If you require an air-gapped or high-security environment, we offer offline license tokens that don't require internet connectivity for validation. Please contact [email protected] to request an air-gapped license.
Optional Environment Variables
SLING_PLATFORM_HOST- The external URL where your platform will be accessible. This is used for agent connections and web UI access. The default ishttp://localhost:7878SLING_PLATFORM_SMTP_CREDENTIALS- SMTP configuration for email notifications. If your SMTP service requires SSL, specify the optionalsecuritykey with the valueSSL. If not provided, email notifications will be disabled. For example:{"host":"smtp.gmail.com","port":587,"user":"[email protected]","password":"your-app-password","from":"Sling Platform <[email protected]>", "security": "SSL"}SLING_LOGGING - The default logger uses ANSI colors. You can change this if you'd like, accepts values:
NO_COLORorJSON.
Connecting Agents
To connect Sling agents to your platform, use the slingdata/sling image with these environment variables:
Agent Environment Variables
SLING_AGENT_KEY- Agent authentication key obtained from the platform UI under Agents sectionSLING_PLATFORM_HOST- Same URL as your platform instanceSLING_PLATFORM_HOST_WS- Optional, the web-socket host to use for NATS connection, e.g.ws://your-platform-host:4443. Default uses the same host asSLING_PLATFORM_HOST.
Docker Compose Example
Ports
7878 - Main HTTP port for web UI and API access
4443 - Web-Socket port for agent communication (via NATS)
Volumes
/home/sling- Platform data directory.
Custom Agent Docker Image
If you need to build your own custom Sling agent Docker image (for example, to include additional dependencies or configurations), you can use the official Dockerfiles as a starting point:
AMD64 Architecture: Dockerfile
ARM64 Architecture: Dockerfile.arm64
See here for an example.
Getting Started
Start the platform container with required environment variables
Access the web UI at your configured
SLING_PLATFORM_HOSTLog in with your admin credentials
Create agent keys in the Agents section
Deploy agents using the
slingdata/slingimageStart creating connections and data pipelines
Security Notes
Use strong, unique values for
SLING_PLATFORM_ENCRYPTION_KEY(32 characters)Store sensitive environment variables securely
Use HTTPS in production environments
Support
For support, reach out to [email protected].
Kubernetes
Troubleshooting
Common Issues
Platform won't start
Check container logs:
docker logs sling-platformVerify environment variables are set correctly
Ensure data volume has sufficient permissions
Agents not connecting
Verify network connectivity between agent and platform
Check agent key is valid and properly set
Ensure platform URL is accessible from agent
Review agent logs for error messages
Performance issues
Increase resource limits (CPU/memory)
Scale agents horizontally for more concurrent jobs
Monitor disk space for data volume
Getting Help
If you are facing issues setting up, please reach out to us at [email protected], on discord or open a Github Issue here.
Self-hosting requires careful consideration of security, backup, and maintenance procedures. Ensure your team has the necessary expertise to manage the deployment.
Last updated
Was this helpful?