# Custom HTML — First-Time Setup
## Prerequisites
- DNS: `custom-html.` must resolve to the server
## Steps
1. **Create the app:**
```bash
abra app new custom-html --server --domain custom-html. --no-input
```
2. **Deploy:**
```bash
abra app deploy custom-html. --chaos --force --no-input
```
No secrets required.
3. **Copy your HTML content:**
```bash
abra app cp custom-html. index.html app:/usr/share/nginx/html
```
4. **Verify:** curl `https://custom-html.` returns HTTP 200.
## Optional: SSH/SFTP uploads
To allow SFTP file management, edit the app env file and uncomment:
```
COMPOSE_FILE="$COMPOSE_FILE:compose.sftp.yml"
PUBLIC_KEY="ssh-ed25519 AAAA... user@host"
```
Then redeploy. Connect via `ssh -p 2220 sftp@custom-html.`.
## Optional: Git-pull from a repo
Uncomment in the env file:
```
COMPOSE_FILE="$COMPOSE_FILE:compose.git-pull.yml"
GIT_REPO_URL="https://..."
CRON_SCHEDULE="*/5 * * * *"
```