https://github.com/haloydev/haloy
Deploy to your own servers, minus the platform overhead
https://github.com/haloydev/haloy
deployment devops docker self-hosted vps
Last synced: 18 days ago
JSON representation
Deploy to your own servers, minus the platform overhead
- Host: GitHub
- URL: https://github.com/haloydev/haloy
- Owner: haloydev
- License: mit
- Created: 2025-11-07T10:55:18.000Z (5 months ago)
- Default Branch: main
- Last Pushed: 2026-03-04T20:39:01.000Z (22 days ago)
- Last Synced: 2026-03-05T02:25:17.128Z (22 days ago)
- Topics: deployment, devops, docker, self-hosted, vps
- Language: Go
- Homepage: https://haloy.dev
- Size: 8.08 MB
- Stars: 131
- Watchers: 1
- Forks: 6
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
Turn any VPS into a production-ready app platform in minutes.
Zero-downtime deploys, automatic HTTPS, and instant rollbacks, without complex setup or vendor lock-in.
## โจ Features
Haloy helps you deploy apps with:
- Fast setup on a fresh VPS
- Automatic HTTPS
- Zero-downtime deploys
- Simple rollbacks
- Preview environments
- No Kubernetes required
- No vendor lock-in
## ๐ Quickstart
### 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
**Install script:**
```bash
curl -fsSL https://sh.haloy.dev/install-haloy.sh | sh
```
**Homebrew (macOS / Linux):**
```bash
brew install haloydev/tap/haloy
```
**npm/pnpm/bun**
```bash
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:
```bash
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:
```bash
haloy server add haloy.yourserver.com
```
For detailed options, see the [Server Installation](https://haloy.dev/docs/server-installation) guide.
### 3. Create haloy.yaml
Create a `haloy.yaml` file:
```yaml
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](https://github.com/haloydev/examples) for complete configurations showing how to deploy common web apps like Next.js, TanStack Start, static sites, and more.
### 4. Deploy
```bash
haloy deploy
# Check status
haloy status
```
That's it! Your application is now deployed and accessible at your configured domain.
## Learn More
- [Configuration Reference](https://haloy.dev/docs/configuration-reference)
- [Commands Reference](https://haloy.dev/docs/commands-reference)
- [Architecture](https://haloy.dev/docs/architecture)
- [Examples Repository](https://github.com/haloydev/examples)