# Deploy

One-command installer for Atlas OS on a fresh Debian 12 / Ubuntu 24.04 server.

## Prerequisites

- Debian 12 or Ubuntu 24.04 (x86_64)
- Root access
- A domain with DNS A record pointed at the server
- A Tailscale account (free tier works)

## Install

```bash
git clone <this-repo-url>
cd atlas-os
chmod +x deploy/install.sh
sudo ./deploy/install.sh --domain yourdomain.com --email admin@yourdomain.com
```

The installer:
1. Installs Docker, Caddy, Tailscale
2. Writes `deploy/caddy/Caddyfile.template` → `/etc/caddy/Caddyfile` with your domain substituted
3. Pulls and starts the core compose stack (`atlas-core.yml`)
4. Generates strong secrets at `/opt/atlas/secrets/atlas.env` (chmod 600)

## Post-install

1. Open `https://auth.yourdomain.com` and complete Authentik setup
2. Create your admin user in Authentik
3. Open `https://command.yourdomain.com/os/` — Atlas OS desktop boots
4. Add the AI stack: `docker compose -f deploy/compose/atlas-ai.yml up -d`
5. Configure `server/atlas_brain.py` with your mail accounts and API keys

## Secrets

The installer generates secrets at `/opt/atlas/secrets/atlas.env` (chmod 600).
Never commit this file — it is in `.gitignore`.

## Customize

To swap in your domain across all docs after cloning:

```bash
grep -rl 'YOUR_DOMAIN' . | xargs sed -i 's/YOUR_DOMAIN/yourdomain.com/g'
```

## Minimum viable stack

If you want just the browser OS without the full AI + POS stack:

```bash
docker compose -f deploy/compose/atlas-core.yml up -d
```

Core services: Authentik · Nextcloud · Stalwart · Forgejo · Vaultwarden · the OS desktop.
