Prerequisites
- Linux server with sudo/root access (Ubuntu, Debian, Rocky, Fedora, or similar)
- Public IP or domain name for the instance URL
- Minimum 4 GB RAM, 20 GB disk
-
Port 80 available, or pass
--http-port
One-Command Install
The hosted installer prepares the server, checks out Kageos, and starts production services.
# Domain or HTTPS endpoint
$ curl -fsSL https://kageos.com/install.sh | sudo bash -s -- \
--base-url https://your-domain.com
The installer installs host basics where possible, installs Go 1.25 if needed, prepares Podman/Docker Compose, clones Kageos into
/opt/kageos, creates production config, and starts MySQL, NATS, MinIO, Nginx, and platform services.
Auditable Install
# Download, inspect, then run
$ curl -fsSLO https://kageos.com/install.sh
$ less install.sh
$ sudo bash install.sh --base-url https://your-domain.com
Use this path for security review, enterprise environments, or any server where you want to read the bootstrapper before execution.
Common Install Modes
# Quick HTTP trial by IP
$ curl -fsSL https://kageos.com/install.sh | sudo bash -s -- --base-url http://your-server-ip --tls-mode http
# Behind Cloudflare, a load balancer, or another HTTPS proxy
$ curl -fsSL https://kageos.com/install.sh | sudo bash -s -- --base-url https://app.example.com --tls-mode external
# Custom HTTP port
$ curl -fsSL https://kageos.com/install.sh | sudo bash -s -- --base-url http://your-server-ip:8080 --http-port 8080
Use --tls-mode external when HTTPS terminates before Kageos. Use
--tls-mode http for an internal or temporary HTTP deployment.
What Gets Deployed
L1
Infrastructure
MySQL, NATS, MinIO containers
L2
Gateway
Nginx, TLS termination, static frontend
L3
Platform Services
9 microservices in one core-server process
L4
App Runtime
Podman API, app container lifecycle management
L5
User Apps
Generated apps run in isolated Podman containers
Common Commands
# Check status
$ cd /opt/kageos && go run ./cmd/kagectl status
# View logs
$ cd /opt/kageos && tail -f .kageos/prod/kagectl-up.log
# Stop
$ cd /opt/kageos && go run ./cmd/kagectl down
# Upgrade
$ curl -fsSL https://kageos.com/install.sh | sudo bash -s -- --base-url https://your-domain.com
Need help?
Check the full documentation or open an issue on GitHub.