Skitflow

Quickstart

Clean VPS to a first healthy application in Skitflow.

This guide takes you from a fresh Linux server to one application serving HTTPS traffic through Skitflow.

1. Prepare the server

Use a clean VPS or dedicated server with:

  • Ubuntu 22.04/24.04 LTS or Debian 11/12.
  • Root access over SSH.
  • At least 4 GB RAM, 8 GB recommended if the server will build images.
  • A public IPv4 address.
  • DNS access for the domain you want to attach.

Skitflow controls Docker on the host. Treat the server as a deployment control plane, not as a shared shell box for unrelated workloads.

2. Install Skitflow

Run the installer with Bash:

curl -sSL https://skitflow.cloud/install.sh | sudo bash -s -- --channel stable

For testing the newest features you can use --channel canary, but production instances should stay on stable unless support tells you otherwise.

3. Open the dashboard

Open http://your-server-ip:3000, complete the setup wizard, and create the first administrator account.

Port 3000 is for first setup. Before inviting users, put the dashboard behind HTTPS and close direct public access to port 3000.

4. Add a domain

  1. Create an A record pointing your domain to the server public IP.
  2. In Skitflow, open Settings -> Web Server and configure the public domain.
  3. Enable HTTPS through Traefik.
  4. Confirm the browser shows a valid certificate.

5. Deploy the first app

The fastest safe path is a small Docker image that already exposes a port:

  1. Open Projects and create a project.
  2. Create an environment, for example production.
  3. Add an application.
  4. Choose Docker image as the source.
  5. Enter the image name and internal port, for example 3000.
  6. Save and click Deploy.
  7. Add a domain for the application and verify it returns HTTP 200.

6. Verify the deployment

From your workstation:

curl -I https://your-app.example.com

Expected result:

  • HTTP status is 200, 301, or 302 depending on the app.
  • The certificate is valid.
  • The latest deployment in Skitflow is marked successful.
  • Logs show the app booted without repeated restarts.

7. Next steps

After the first app works, continue with:

On this page