1
0
silverbullet/website/Install/Deno Deploy.md
2023-12-19 12:58:18 +01:00

36 lines
1.8 KiB
Markdown
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

> **warning** Experimental
> This setup is not battle-tested, use it at your own risk
You can deploy SilverBullet to [Deno Deploy](https://deno.com/deploy) for free, and store space content in [Deno KV](https://deno.com/kv). This is a convenient option to deploy SilverBullet in the cloud, without having to run or pay for a server.
# Steps
Sign up for a (free) [Deno Deploy account](https://dash.deno.com/projects) and “Create an empty project” there.
Jump to the “Settings”, give your project a nicer name, and configure the following environment variables:
* `SB_FOLDER`: `db://`
* `SB_PORT`: `8000`
* `SB_SYNC_ONLY`: `1` (Deno Deploy does not currently support Workers, so running indexing etc. on the server will not work)
* `SB_USER`: (e.g. `pete:letmein`) — this is **super important** otherwise your space will be open to anybody without any authentication
* `SB_AUTH_TOKEN`: (Optional) If you would like to migrate existing content from elsewhere (e.g. a local folder) using [[Sync]], you will want to configure an authentication token here (pick something secure).
Make sure you have [installed Deno locally](https://docs.deno.com/runtime/manual/getting_started/installation) on your machine.
Then, install `deployctl` via:
```shell
$ deno install -Arf https://deno.land/x/deploy/deployctl.ts
```
To deploy, run:
```shell
$ deployctl deploy -p=your-project --entrypoint=https://silverbullet.md/silverbullet.js --include= --prod
```
This will ask you to authenticate with your Deno Deploy account, and then deploy SilverBullet.
# Migrating and backing up content
This setup stores you [[Spaces]] content in Denos KV database, which is still a beta feature and not specifically designed for this purpose. Therefore its recommended to use something like [[Sync]] to make backups elsewhere.
For this, be sure to also configure a `SB_AUTH_TOKEN` variable.