# Create

Take a backup of a target's database and uploaded files, then bring it down to this machine.

### Syntax

```
$ vela backup create [name]
```

The name is generated when omitted, from the instance and the time: `vela_myapp_20260901134501.zip`. A name you pass has to be one PocketBase accepts — lowercase letters, digits, `-` and `_`, ending in `.zip`.

### Why it downloads

PocketBase writes the archive into `pb_data/backups`, inside the directory it is a backup of. Left there it survives nothing that matters, so `create` saves a copy to `backups/` in your project by default.

```
$ vela backup create
$ vela backup create -o ~/backups
$ vela backup create --no-download     # leave it on the server
```

### Options

- `-o, --output <dir>` - Where to save the archive, defaults to `backups`
- `--no-download` - Leave the archive on the server
- `-t, --target <target>` - Which copy of the app to act on, defaults to `production`
- `--server <ssh>` - Server this target runs on, recorded on first use

### Long backups

A large instance can take longer to archive than the client will wait for a reply. That is not a failure: the name is chosen up front, so `vela` goes on watching for the archive to appear rather than reporting a backup that succeeded as a backup that failed.