Browse Source

chore(Wiki): Added upgrading documentation

Owen Diffey 3 years ago
parent
commit
4ca379938a
3 changed files with 47 additions and 0 deletions
  1. 2 0
      .wiki/Installation.md
  2. 44 0
      .wiki/Upgrading.md
  3. 1 0
      README.md

+ 2 - 0
.wiki/Installation.md

@@ -1,6 +1,8 @@
 # Installation
 # Installation
 Musare can be installed with Docker (recommended) or without, guides for both installations can be found below.
 Musare can be installed with Docker (recommended) or without, guides for both installations can be found below.
 
 
+To update an existing installation please see [Upgrading](./Upgrading.md).
+
 ## Docker
 ## Docker
 
 
 ### Dependencies
 ### Dependencies

+ 44 - 0
.wiki/Upgrading.md

@@ -0,0 +1,44 @@
+# Upgrading
+Musare upgrade process.
+
+To install a new instance please see [Installation](./Installation.md).
+
+## Docker
+
+### Instructions
+1. Make a backup! `./musare.sh backup`
+2. Execute `./musare.sh update`. If an update requires any configuration changes or database migrations, you will be notified.
+    - To update configuration compare example configs against your own and add/update/remove any properties as needed. For more information on properties see [Configuration](./Configuration.md). Frontend and backend configuration updates always update the `configVersion` property.
+        - Backend, compare `backend/config/template.json` against `backend/config/default.json`.
+        - Frontend, compare `frontend/dist/config/template.json` against `frontend/dist/config/default.json`.
+        - Environment, compare `.env.example` against `.env`.
+    - To migrate database;
+        - `./musare.sh stop backend`
+        - Set `migration` to `true` in  `backend/config/default.json`
+        - `./musare.sh start backend`.
+        - Follow backend logs and await migration completion notice `./musare.sh attach backend`.
+        - `./musare.sh stop backend`
+        - Set `migration` to `false` in  `backend/config/default.json`
+        - `./musare.sh start backend`.
+
+---
+
+## Non-Docker
+
+### Instructions
+1. Make a backup!
+2. Stop all services
+3. `git pull`
+4. `cd frontend && npm install`
+5. `cd ../backend && npm install`
+6. Compare example configs against your own and add/update/remove any properties as needed. For more information on properties see [Configuration](./Configuration.md). Frontend and backend configuration updates always update the `configVersion` property.
+    - Backend, compare `backend/config/template.json` against `backend/config/default.json`.
+    - Frontend, compare `frontend/dist/config/template.json` against `frontend/dist/config/default.json`.
+7. Start MongoDB and Redis services.
+8. Run database migration;
+    - Set `migration` to `true` in  `backend/config/default.json`
+    - Start backend service.
+    - Follow backend logs and await migration completion notice.
+    - Stop backend service.
+    - Set `migration` to `false` in  `backend/config/default.json`
+9. Start backend and frontend services.

+ 1 - 0
README.md

@@ -10,6 +10,7 @@ A production demonstration instance of Musare can be found at [demo.musare.com](
 
 
 ## Documentation
 ## Documentation
 - [Installation](./.wiki/Installation.md)
 - [Installation](./.wiki/Installation.md)
+- [Upgrading](./.wiki/Upgrading.md)
 - [Configuration](./.wiki/Configuration.md)
 - [Configuration](./.wiki/Configuration.md)
 - [Utility Script](./.wiki/Utility_Script.md)
 - [Utility Script](./.wiki/Utility_Script.md)
 - [Backend Commands](./.wiki/Backend_Commands.md)
 - [Backend Commands](./.wiki/Backend_Commands.md)