Server Installation
Install Slipway on your VPS with a single command.
One-Line Install
SSH into your server and run:
curl -fsSL https://raw.githubusercontent.com/sailscastshq/slipway/main/install.sh | bashThis script will:
- Check for Docker (install if missing)
- Create the
slipwayDocker network - Detect your server's public IP
- Generate secrets (
SESSION_SECRETandDATA_ENCRYPTION_KEY) and save them to/etc/slipway/.env - Start the Caddy reverse proxy
- Pull and start the Slipway dashboard
- Add Slipway's ports to UFW or firewalld when either host firewall is active
- Display your access URL
What Gets Installed
| Component | Purpose |
|---|---|
| Caddy | Reverse proxy with automatic HTTPS |
| Slipway | The dashboard application |
| Docker Network | Isolated network for Slipway and deployed apps |
Installation Output
After running the install script, you'll see something like:
Installing Slipway...
Docker already installed
Creating Docker network...
Network ready
Detecting server IP...
Server URL: http://203.0.113.50:1337
Generating secrets...
Secrets generated and saved to /etc/slipway/.env
Starting Caddy proxy...
Caddy proxy running
Pulling latest Slipway image...
Starting Slipway dashboard...
Slipway dashboard running
Waiting for Slipway to start...
========================================================
Slipway installed successfully!
========================================================
Dashboard: http://203.0.113.50:1337
Next steps:
1. Open the dashboard URL above to complete setup
2. Point a domain to this server (e.g., slipway.yourdomain.com)
3. SSL will be configured automatically when you add a domain
To deploy apps, install the CLI:
npm install -g slipway-cli
slipway login --server http://203.0.113.50:1337
========================================================TIP
The actual output uses colored text to highlight status messages. Green indicates success, yellow indicates warnings.
Accessing Slipway
After installation, access your Slipway dashboard at:
http://YOUR_SERVER_IP:1337Before Custom Domain
Until you configure a custom domain, Slipway runs on port 1337 with HTTP. For production use, you should configure a custom domain to enable HTTPS.
Provider Firewall
The installer can configure an active firewall on the server, but it cannot change a firewall or security group managed by your VPS provider. Allow the required ports in the provider's control panel too. See Network Requirements for the complete port list.
Manual Installation
If you prefer to install manually or customize the setup:
1. Install Docker
curl -fsSL https://get.docker.com | sh
systemctl enable docker
systemctl start docker2. Create Network
docker network create slipway3. Generate Secrets
SESSION_SECRET=$(openssl rand -hex 32)
DATA_ENCRYPTION_KEY=$(openssl rand -base64 32)
# Persist secrets for future updates
sudo mkdir -p /etc/slipway
echo "SESSION_SECRET=$SESSION_SECRET" | sudo tee /etc/slipway/.env
echo "DATA_ENCRYPTION_KEY=$DATA_ENCRYPTION_KEY" | sudo tee -a /etc/slipway/.env
sudo chmod 600 /etc/slipway/.env4. Start Caddy
docker run -d \
--name slipway-proxy \
--network slipway \
--restart unless-stopped \
-p 80:80 \
-p 443:443 \
-p 1337:1337 \
-v /var/run/docker.sock:/var/run/docker.sock:ro \
-v slipway-certs:/data \
-e CADDY_INGRESS_NETWORKS=slipway \
lucaslorentz/caddy-docker-proxy:latest5. Start Slipway
docker run -d \
--name slipway \
--network slipway \
--restart unless-stopped \
-v /var/run/docker.sock:/var/run/docker.sock \
-v slipway-db:/app/db \
-e NODE_ENV=production \
-e PORT=1337 \
-e SLIPWAY_URL="http://YOUR_SERVER_IP:1337" \
-e SESSION_SECRET="$SESSION_SECRET" \
-e DATA_ENCRYPTION_KEY="$DATA_ENCRYPTION_KEY" \
-l "caddy=:1337" \
ghcr.io/sailscastshq/slipway:latestTroubleshooting
Docker Permission Denied
If you see permission errors, add your user to the docker group:
sudo usermod -aG docker $USER
# Log out and back in for changes to take effectPort Already in Use
If port 1337, 80, or 443 is already in use:
# Find what's using the port
sudo lsof -i :1337
# Stop the conflicting service or change Slipway's portContainer Won't Start
Check the logs:
docker logs slipway
docker logs slipway-proxyWhat's Next?
Once Slipway is installed, proceed to Initial Setup to create your admin account and configure your instance.