Docker Deployment
Deploy Sail using Docker and Docker Compose.
Docker Compose (Recommended)
The simplest way to run Sail is using Docker Compose:
git clone https://github.com/lqlive/sail.git
cd sail
docker-compose up -d
This starts all required services:
- • MongoDB (port 27017)
- • Sail Management API (port 5000)
- • Sail Proxy Gateway (ports 8080/8443)
- • Web UI (port 5173)
Docker Compose Configuration
version: '3.8'
services:
mongodb:
image: mongo:latest
ports:
- "27017:27017"
volumes:
- mongodb_data:/data/db
sail-api:
image: sail/api:latest
ports:
- "5000:5000"
environment:
- MongoDB__ConnectionString=mongodb://mongodb:27017
depends_on:
- mongodb
sail-proxy:
image: sail/proxy:latest
ports:
- "8080:8080"
- "8443:8443"
environment:
- MongoDB__ConnectionString=mongodb://mongodb:27017
depends_on:
- mongodb
web-ui:
image: sail/web:latest
ports:
- "5173:80"
environment:
- API_URL=http://sail-api:5000
volumes:
mongodb_data:
Running Individual Containers
1. Start MongoDB
docker run -d -p 27017:27017 --name sail-mongodb mongo:latest
2. Run Management API
docker run -d -p 5000:5000 --name sail-api \
-e MongoDB__ConnectionString=mongodb://sail-mongodb:27017 \
sail/api:latest
3. Run Proxy Gateway
docker run -d -p 8080:8080 -p 8443:8443 --name sail-proxy \
-e MongoDB__ConnectionString=mongodb://sail-mongodb:27017 \
sail/proxy:latest
Environment Variables
| Variable | Description | Default |
|---|---|---|
MongoDB__ConnectionString |
MongoDB connection string | mongodb://localhost:27017 |
MongoDB__Database |
Database name | sail |
API_URL |
Management API URL (for Web UI) | http://localhost:5000 |