summaryrefslogtreecommitdiff
path: root/docs/admin
diff options
context:
space:
mode:
Diffstat (limited to 'docs/admin')
-rw-r--r--docs/admin/admin_tasks.md44
-rw-r--r--docs/admin/backup.md15
-rw-r--r--docs/admin/updating.md9
3 files changed, 68 insertions, 0 deletions
diff --git a/docs/admin/admin_tasks.md b/docs/admin/admin_tasks.md
new file mode 100644
index 000000000..883095cdb
--- /dev/null
+++ b/docs/admin/admin_tasks.md
@@ -0,0 +1,44 @@
+# Admin tasks
+## Important
+
+If your instance is running in prod mode (most likely it is) make sure to prefix every command with `MIX_ENV=prod`.
+
+## User management
+
+It is possible to obtain a list of all available tasks with their options by executing `mix help pleroma.user`
+
+### Adding users
+
+Use `mix pleroma.user invite` to generate an invite link for a new user.
+
+Also, `mix pleroma.user new NICKNAME EMAIL [OPTION...]` can be used to register an account.
+
+### Making a user a moderator/admin/locked
+
+Run `mix pleroma.user set username --[no-]moderator` to make user a moderator or remove the moderator status.
+
+To make the user admin or locked use `mix pleroma.user set NICKNAME --[no-]admin` and `mix pleroma.user set NICKNAME --[no-]locked` respectively
+
+### Resetting a password
+
+Run `mix pleroma.user reset_password NICKNAME` to generate a password reset link that you can then send to the user.
+
+### Banning users
+
+Run `mix pleroma.user rm NICKNAME` to remove a local account.
+
+To deactivate(block from the server completely)/reactivate local and remote user accounts run:
+
+`mix pleroma.user toggle_activated NICKNAME@instancename`
+
+## Relay managment
+
+It is possible to obtain a list of all available tasks with their options by executing `mix help pleroma.relay`
+
+### Following a relay
+
+Run `mix pleroma.relay follow RELAY_URL`
+
+### Unfollowing a relay
+
+Run `mix pleroma.relay unfollow RELAY_URL`
diff --git a/docs/admin/backup.md b/docs/admin/backup.md
new file mode 100644
index 000000000..b373996f5
--- /dev/null
+++ b/docs/admin/backup.md
@@ -0,0 +1,15 @@
+# Backup your instance
+
+1. Stop the Pleroma service.
+2. Go to the working directory of Pleroma (default is `/opt/pleroma`)
+3. Run `sudo -Hu postgres pg_dump -d <pleroma_db> --format=custom -f </path/to/backup_location/pleroma.pgdump>`
+4. Copy `pleroma.pgdump`, `config/prod.secret.exs` and the `uploads` folder to your backup destination. If you have other modifications, copy those changes too.
+5. Restart the Pleroma service.
+
+## Restore your instance
+
+1. Stop the Pleroma service.
+2. Go to the working directory of Pleroma (default is `/opt/pleroma`)
+3. Copy the above mentioned files back to their original position.
+4. Run `sudo -Hu postgres pg_restore -d <pleroma_db> -v -1 </path/to/backup_location/pleroma.pgdump>`
+5. Restart the Pleroma service.
diff --git a/docs/admin/updating.md b/docs/admin/updating.md
new file mode 100644
index 000000000..33ce1ab4f
--- /dev/null
+++ b/docs/admin/updating.md
@@ -0,0 +1,9 @@
+# Updating your instance
+1. Stop the Pleroma service.
+2. Go to the working directory of Pleroma (default is `/opt/pleroma`)
+3. Run `git pull`. This pulls the latest changes from upstream.
+4. Run `mix deps.get`. This pulls in any new dependencies.
+5. Run `mix ecto.migrate`[^1]. This task performs database migrations, if there were any.
+6. Restart the Pleroma service.
+
+[^1]: Prefix with `MIX_ENV=prod` to run it using the production config file.