X-Git-Url: https://git.squeep.com/?a=blobdiff_plain;f=docs%2Fadministration%2Fupdating.md;h=d7d30c9269ade9cde7bef93c4f75fe8786954eaf;hb=becf7dced6c051326f33dd201ac25d38af341b24;hp=84e6ef18d6e5ff204a313f213f09b03e4828d872;hpb=f459aabdfafa990b33610438650f882ccac072d2;p=akkoma diff --git a/docs/administration/updating.md b/docs/administration/updating.md index 84e6ef18d..d7d30c926 100644 --- a/docs/administration/updating.md +++ b/docs/administration/updating.md @@ -1,9 +1,27 @@ # Updating your instance -1. Go to the working directory of Pleroma (default is `/opt/pleroma`) -2. Run `git pull`. This pulls the latest changes from upstream. -3. Run `mix deps.get`. This pulls in any new dependencies. -4. Stop the Pleroma service. -5. Run `mix ecto.migrate`[^1]. This task performs database migrations, if there were any. -6. Start the Pleroma service. - -[^1]: Prefix with `MIX_ENV=prod` to run it using the production config file. + +You should **always check the [release notes/changelog](https://akkoma.dev/AkkomaGang/akkoma/src/branch/develop/CHANGELOG.md)** in case there are config deprecations, special update steps, etc. + +Besides that, doing the following is generally enough: + +## For OTP installations + +```sh +# Download the new release +su akkoma -s $SHELL -lc "./bin/pleroma_ctl update" + +# Migrate the database, you are advised to stop the instance before doing that +su akkoma -s $SHELL -lc "./bin/pleroma_ctl migrate" +``` + +## For from source installations (using git) + +1. Go to the working directory of Akkoma (default is `/opt/akkoma`) +2. Run `git pull` [^1]. This pulls the latest changes from upstream. +3. Run `mix deps.get` [^1]. This pulls in any new dependencies. +4. Stop the Akkoma service. +5. Run `mix ecto.migrate` [^1] [^2]. This task performs database migrations, if there were any. +6. Start the Akkoma service. + +[^1]: Depending on which install guide you followed (for example on Debian/Ubuntu), you want to run `git` and `mix` tasks as `akkoma` user by adding `sudo -Hu akkoma` before the command. +[^2]: Prefix with `MIX_ENV=prod` to run it using the production config file.