You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: src/server/upgrade/index.md
+116-4Lines changed: 116 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -14,6 +14,113 @@ Make sure to always back up your database data before doing a migration.
14
14
15
15
[[toc]]
16
16
17
+
## From 2025.5.x to 2025.7.x {#migration-guide-from-2025-5-x-to-2025-7-x}
18
+
19
+
<MigrationTypetype="EE" />
20
+
21
+
Perform the migration:
22
+
23
+
1. Stop your running docker containers
24
+
```bash
25
+
$ docker compose -f docker-compose.yml down # or similarly, based on your previous deployment
26
+
```
27
+
2. Clone or pull the <GitHubRepoid="MerginMaps/server/blob/master/"desc="server repository" /> or download <GitHubRepoid="MerginMaps/server/blob/master/deployment"desc="deployment folder" /> and open `/enterprise` folder.
28
+
```bash
29
+
$ cd server/deployment/enterprise
30
+
```
31
+
3. Adapt your existing `docker-compose.yml` and `docker-compose.maps.yml` file to the new version.
32
+
4. If you have installed maps stack, change `qgis_extractor` service image version to 2025.3.0 in `docker-compose.maps.yml`.
33
+
34
+
:::warning Version breaking change
35
+
Previously used image version for service `qgis_extractor` (2025.1.0) is not compatible with latest version of Mergin Maps server.
36
+
:::
37
+
38
+
5. If you have installed maps stack, add new environment variables to `qgis_extractor` service in `docker-compose.maps.yaml`.
You can also clean the following variables from `.prod.env`:
49
+
50
+
```bash
51
+
QGIS_EXTRACTOR_TIMEOUT
52
+
QGIS_EXTRACTOR_API_URL
53
+
```
54
+
55
+
6. Start up your docker containers
56
+
```bash
57
+
$ docker compose -f docker-compose.yml -d up # or similarly, based on your deployment
58
+
```
59
+
7. Check that you are on correct database migration versions (`6cb54659c1de`, `e95d051969ce`).
60
+
```bash
61
+
$ docker exec merginmaps-server flask db current
62
+
INFO [alembic.runtime.migration] Context impl PostgresqlImpl.
63
+
INFO [alembic.runtime.migration] Will assume transactional DDL.
64
+
6cb54659c1de
65
+
e95d051969ce
66
+
```
67
+
68
+
- If you do not see the version numbers at all, run the following commands:
69
+
```bash
70
+
$ docker exec merginmaps-server flask db stamp 6cb54659c1de
71
+
$ docker exec merginmaps-server flask db stamp e95d051969ce
72
+
```
73
+
8. Run the database migration:
74
+
```bash
75
+
$ docker exec merginmaps-server flask db upgrade community@b9ec9ab6694f
76
+
$ docker exec merginmaps-server flask db upgrade enterprise@c40e5e645b57
77
+
```
78
+
79
+
## From 2025.2.x to 2025.7.x (CE) {#migration-guide-from-2025-2-x-to-2025-7-x-ce}
80
+
81
+
<MigrationType type="CE" />
82
+
83
+
Perform the migration:
84
+
85
+
1. Stop your running docker containers
86
+
```bash
87
+
$ docker compose -f docker-compose.yml down # or similarly, based on your previous deployment
88
+
```
89
+
2. Clone or pull the <GitHubRepo id="MerginMaps/server/blob/master/" desc="server repository" /> or download <GitHubRepo id="MerginMaps/server/blob/master/deployment" desc="deployment folder" /> and open `/community` folder.
90
+
```bash
91
+
$ cd server/deployment/community
92
+
```
93
+
3. Adapt your existing `docker-compose.yml` and `.prod.env` environment variables to the new version.
94
+
4. Upgrade your nginx proxy configuration file with the latest version available in the <GitHubRepo id="MerginMaps/server/blob/master/deployment/common/nginx.conf" desc="nginx.conf" /> (This is a necessary step for improved downloading of zip files from the dashboard).
95
+
5. If you want to persist diagnostic logs from a mobile application and QGIS plugin, run the following command to set proper permissions for the folder `/diagnostic_logs` used for storing log files:
96
+
```bash
97
+
$ sh ../common/set_permissions.sh diagnostic_logs
98
+
```
99
+
You can also disable this persistence in <GitHubRepo id="MerginMaps/server/blob/master/deployment/community/docker-compose.yml" desc="docker-compose.yml" /> `server` service definition.
100
+
6. Start up your docker containers
101
+
```bash
102
+
$ docker compose -f docker-compose.yml -d up # or similarly, based on your deployment
103
+
```
104
+
7. Check that you are on correct database migration versions (`ba5051218de4`).
105
+
```bash
106
+
$ docker exec merginmaps-server flask db current
107
+
INFO [alembic.runtime.migration] Context impl PostgresqlImpl.
108
+
INFO [alembic.runtime.migration] Will assume transactional DDL.
109
+
35af0c8be41e (head)
110
+
ba5051218de4
111
+
```
112
+
113
+
- If you do not see the version numbers at all, run the following commands:
114
+
```bash
115
+
$ docker exec merginmaps-server flask db stamp 35af0c8be41e
116
+
$ docker exec merginmaps-server flask db stamp ba5051218de4
117
+
```
118
+
8. Run the database migration:
119
+
```bash
120
+
$ docker exec merginmaps-server flask db upgrade heads
121
+
# New head will be community@b9ec9ab6694f
122
+
```
123
+
17
124
## From 2025.3.x to 2025.5.x {#migration-guide-from-2025-3-x-to-2025-5-x}
18
125
19
126
<MigrationType type="EE" />
@@ -24,17 +131,22 @@ Perform the migration:
24
131
```bash
25
132
$ docker compose -f docker-compose.yml down # or similarly, based on your previous deployment
26
133
```
27
-
2. Please clone or pull the <GitHubRepoid="MerginMaps/server/blob/master/"desc="server repository" /> or download <GitHubRepoid="MerginMaps/server/blob/master/deployment/"desc="deployment folder" />
134
+
2. Please clone or pull the <GitHubRepo id="MerginMaps/server/blob/master/" desc="server repository" /> or download <GitHubRepo id="MerginMaps/server/blob/master/deployment" desc="deployment folder" />
28
135
```bash
29
136
$ cd server/deployment/enterprise
30
137
```
31
138
3. Adapt your existing `docker-compose.yml` file to the new version.
32
139
4. Upgrade your nginx proxy configuration file with the latest version available in the <GitHubRepo id="MerginMaps/server/blob/master/deployment/common/nginx.conf" desc="nginx.conf" /> (This is a necessary step for improved downloading of zip files from the dashboard).
33
-
5. Start up your docker containers
140
+
5. If you want to persist diagnostic logs from a mobile application and QGIS plugin, run the following command to set proper permissions for the folder `/diagnostic_logs` used for storing log files:
141
+
```bash
142
+
$ sh ../common/set_permissions.sh diagnostic_logs
143
+
```
144
+
You can also disable this persistence in <GitHubRepo id="MerginMaps/server/blob/master/deployment/enterprise/docker-compose.yml" desc="docker-compose.yml" /> `server` service definition.
145
+
6. Start up your docker containers
34
146
```bash
35
147
$ docker compose -f docker-compose.yml -d up # or similarly, based on your deployment
36
148
```
37
-
6. Check that you are on correct database migration versions (`5ad13be6f7ef`, `819e6b20ee93`).
149
+
7. Check that you are on correct database migration versions (`5ad13be6f7ef`, `819e6b20ee93`).
38
150
```bash
39
151
$ docker exec merginmaps-server flask db current
40
152
INFO [alembic.runtime.migration] Context impl PostgresqlImpl.
@@ -48,7 +160,7 @@ Perform the migration:
48
160
$ docker exec merginmaps-server flask db stamp 5ad13be6f7ef
49
161
$ docker exec merginmaps-server flask db stamp 819e6b20ee93
50
162
```
51
-
7. Run the database migration:
163
+
8. Run the database migration:
52
164
```bash
53
165
$ docker exec merginmaps-server flask db upgrade community@6cb54659c1de
54
166
$ docker exec merginmaps-server flask db upgrade enterprise@e95d051969ce
0 commit comments