2d9e77075dbb66b4852f9422b2bead9ff310c7fc
[akkoma] / docs / docs / administration / updating.md
1 # Updating your instance
2
3 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.
4
5 Besides that, doing the following is generally enough:
6
7 ## For OTP installations
8
9 ```sh
10 # Download the new release
11 su akkoma -s $SHELL -lc "./bin/pleroma_ctl update"
12
13 # Migrate the database, you are advised to stop the instance before doing that
14 su akkoma -s $SHELL -lc "./bin/pleroma_ctl migrate"
15 ```
16
17 If you selected an alternate flavour on installation,
18 you _may_ need to specify `--flavour`, in the same way as
19 [when installing](../../installation/otp_en#detecting-flavour).
20
21 ## For from source installations (using git)
22
23 1. Go to the working directory of Akkoma (default is `/opt/akkoma`)
24 2. Run `git pull` [^1]. This pulls the latest changes from upstream.
25 3. Run `mix deps.get` [^1]. This pulls in any new dependencies.
26 4. Stop the Akkoma service.
27 5. Run `mix ecto.migrate` [^1] [^2]. This task performs database migrations, if there were any.
28 6. Start the Akkoma service.
29
30 [^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.
31 [^2]: Prefix with `MIX_ENV=prod` to run it using the production config file.