Quickstart

This guide will walk you through setting up Haloy and deploying your first application.

Prerequisites

  • Server: Any modern Linux server
  • Local: Docker for building your app
  • Domain: A domain or subdomain pointing to your server for secure API access

1. Install haloy

curl -fsSL https://sh.haloy.dev/install-haloy.sh | sh
brew install haloydev/tap/haloy
npm i -g haloy
pnpm add -g haloy
bun add -g haloy

2. Server Setup

SSH into your server and run the install script with your API domain:

curl -fsSL https://sh.haloy.dev/install-haloyd.sh | API_DOMAIN=haloy.yourserver.com sh

Note: If you’re not logged in as root, use | sudo sh instead of | sh.

After installation completes, copy the API token from the output and add the server to your local machine:

haloy server add haloy.yourserver.com <token>

See the Server Installation guide for more details.

3. Create haloy.yaml

Create a haloy.yaml file (or use Agent Skills to generate it with your AI coding assistant):

name: "my-app" server: haloy.yourserver.com domains: - domain: "my-app.com" aliases: - "www.my-app.com" # Redirects to my-app.com

This will look for a Dockerfile in the same directory as your config file, build it and upload it to the server. This is the Haloy configuration in its simplest form.

Check out the examples repository for complete configurations showing how to deploy common web apps like Next.js, TanStack Start, static sites, and more.

4. Deploy

haloy deploy # Check status haloy status

That’s it! Your application is now deployed and accessible at your configured domain.

Next Steps