# Self-host an open-source Dify alternative

> Self-hosting a Dify alternative puts the whole stack on a server you control. Kortix is the open-source AI Operating System, and the kortix self-host commands install the full platform as one Docker Compose stack on your own Linux box.

URL: https://difyalternative.com/self-hosting

## Self-hosting a Dify alternative on your own server

Self-hosting a Dify alternative means running the whole stack on a server you control, and Kortix, the open-source AI Operating System, installs as one Docker Compose stack. If you already self-host Dify, you know the shape of the job: a Linux box with Docker, DNS that points at it, and provider keys. Kortix follows the same pattern, with one detail to plan for. On a self-hosted Kortix, sessions run on a cloud sandbox provider, so the instance has to be reachable from the internet.

### What Dify's Community Edition needs

Dify is an open-source LLM app development platform. [Dify's own repository](https://github.com/langgenius/dify) documents its Community Edition running through Docker Compose from the `dify/docker` directory, on a machine with at least 2 CPU cores and 4 GiB of RAM and Docker Compose v2.24.0 or later. You copy the example environment file and bring the stack up:

```sh
cd dify
cd docker
cp .env.example .env
docker compose up -d
```

The dashboard then opens at `http://localhost/install` for the first setup.

### What a self-hosted Kortix installs

Kortix turns the same job into a command set. [The self-hosting docs](https://kortix.com/docs/host) describe a self-hosted instance as the full Kortix platform on a server you control, one Docker Compose stack that the `kortix self-host` CLI installs, configures, and updates. You point `kortix.example.com` and `api.kortix.example.com` at the server, open ports 80 and 443, then install the CLI, answer the setup questions, and start the stack:

```sh
curl -fsSL https://kortix.com/install | bash
kortix self-host init --domain kortix.example.com --admin-email you@example.com
kortix self-host configure
kortix self-host start
kortix self-host doctor
```

### Requirements a self-hosted Kortix adds

Beyond Dify's list, a self-hosted Kortix needs A or AAAA records for the domain and its `api` subdomain before the first start, a wildcard record for sandbox previews, and a sandbox provider key for Daytona, Platinum, or E2B. Sessions run on that provider, not on the server, and the sandbox calls back to the instance's public API URL, so the box needs a public address. You add your model provider key in the web app after the first sign-in, and your own keys stay yours.

### What you own after the install

The stack writes `docker-compose.yml`, `.env`, a `Caddyfile`, and `updater.sh` into `~/.config/kortix/self-host/<instance>/`, and one Compose project named `kortix-<instance>` holds every service. Your agents, skills, company memory, and connectors stay in a git repo you own, not in a vendor's dashboard.

_Commands_

## Self-host Kortix in four commands.

### Init

`terminal`

```sh
$ kortix self-host init --domain kortix.example.com --admin-email you@example.com
```

### Configure

`terminal`

```sh
$ kortix self-host configure
```

### Start

`terminal`

```sh
$ kortix self-host start
```

### Check

`terminal`

```sh
$ kortix self-host doctor
```

_FAQ_

## Self-hosting questions

### Is self-hosting Kortix free?

Self-host is free. You pay your own server, model, and sandbox-provider bills.

### What does a self-hosted Kortix need?

A Linux server with a public IP, Docker and the Compose plugin, A or AAAA records for the domain and its `api` subdomain, ports 80 and 443 open, a sandbox provider key, and a model provider key.

### Where do sessions run when I self-host?

On a cloud sandbox provider: Daytona, Platinum, or E2B. The sandbox calls back to the instance's public API URL, so the server has to be reachable from the internet.

### Can I try a self-hosted Kortix without a domain?

Yes, for evaluation. `kortix self-host init --tunnel cloudflare` then `kortix self-host start` opens the web app on localhost and publishes the API through a Cloudflare tunnel. Sessions start in tunnel mode; without a domain or a tunnel the sandbox cannot reach the API.

### How do updates work?

`kortix-updater` pulls new images once a day, migrates the database, and rolls the app services.

## Run the open-source AI Operating System on your own server.

Self-host is free, and your server and provider bills stay yours.

[Try Kortix](https://kortix.com) · [Read the self-hosting docs](https://kortix.com/docs/host)

Open source · Any model, your keys · Self-host, VPC, or on-prem
