ElfBot
ElfBot is not a standalone app, it's a command-line script written for ElfHosters, which provides self-service functions, including:
- Pause apps
- Restart apps
- Reset apps (wipe config and restore original pre-setup where applicable)
- Backup apps (restart and create an offline backup)
- Claim a plex server
- Set an arbitrary ENV var for an app (advanced, beta feature)
Using ElfBot
ElfBot lives in your FileBrowser console.
Run ElfBot like this:
elfbot <command> <arguments>
For example, to restart plex...
elfbot restart plex
How to stop / suspend an app
You may need to turn an app off temporaily to adjust its config, or to perform a restore from backup. Run elfbot pause <app>
(<app>
should match the name of a folder under /config
), and ElfBot will shutdown the app, and wait for 5 min, before starting the app again.
How to restart an app
ElfBot can restart your app. Run elfbot restart <app>
(<app>
should match the name of a folder under /config
), and ElfBot will instantly trigger an app restart.
How to reset an app
Need to reset an app to defaults? Run elfbot reset <app> --yesiamsure
to perform the reset. ElfBot will restart your app, and remove its config from /config
, resulting in a fresh bootstrap or a clean install.
Warning
This command will result in data loss. There are no further confirmations beyond --yesiamsure
. If you're uncertain, perform a backup of your app before resetting (below).
How to backup an app
In order to safely backup an app, the app can't be running. ElfBot can trigger a restart of your app, and before the app actually starts, make a backup of its config folder to /storage/elfhosted/backup/<app name>-<timestamp>
.
Run:
elfbot backup <app>
To perform the backup!
Here's an example:
And here's the resulting backup:
How to Claiming a Plex server
After you install Plex, if you find that you're just presented with a "web player", you'll need to "claim" it against your Plex account, by grabbing a claim ID from plex.tv/claim/. Claim your plex server using ElfBot by running:
elfbot claim plex <token>
After the claim is made, you'll need to restart plex. To restart Plex, and access your freshly-claimed instance, run:
elfbot restart plex
How to set an ENV var for an app
If you need to set a custom ENV var for an app (for VaultWarden's ADMIN_TOKEN
, for example), you can use ElfBot to apply it to the app, by running:
elfbot env <app> <key>=<value>
For example:
elfbot env vaultwarden ADMIN_TOKEN=thisisnotasecuretoken
Be aware that this process has some limitations, namely:
- You can't see the ENV vars you've already set
- You can't delete an ENV var, but you can set its value to nothing ('')
- Only the apps below are supported (Seek #elf-help if you need an app added):