-
Create dump of the database (https://search.roadsign.pictures/dumps POST)
-
Check status of the Dump - https://search.roadsign.pictures/tasks/63803 GET . It will be ready when status is "succeeded". Take note of the dump file that was generated under details -> dumpUid.
-
SSH into machine
fly ssh console
and navigate to thedumps
directory. Verify the dump file created above with thedumpUid
value is in thedumps
directory. -
Pull the dump file off the volume using sftp
fly ssh sftp get /meili_data/dumps/<dump_uid>.dump
-
Branch repo
git checkout main
git checkout -b upgrade/v1.8.2
- Update
fly.toml
to point to the new Meilisearch Docker Image. Update the application name to be something unique. For instance:
app = 'rsp-search-v1.8.2'
image = 'getmeili/meilisearch:v1.8.2'
- Launch new apps with
fly launch
. Confirm that you wish to copy its configuration to the new app. - Confirm a volume was created for the new app with
fly volumes list
. Note the new volume id. - Extend the volume size to 3GB
fly vol extend <vol_id> -s 3
- Upload dump file:
fly sftp console
cd /meili_data/dumps
put <dump_file>
<ctrl+C>
- SSH into the new machine
fly ssh console
rm -Rf /meili_data/data.ms
meilisearch --import-dump dumps/20240611-142338344.dump
-
Note the new master key that was generated. Create new secret in the Fly.IO dashboard for
MEILI_MASTER_KEY
with that value. Note the new secret in your key manager. Re-deploy the application. -
After deploy completes, visit new application using
fly.dev
domain and verify the data looks correct.
- Remove cert from old application
fly certs remove search.roadsign.pictures
- Create a new certificate for the new application:
fly certs add search.roadsign.pictures
- Note the new CNAME and update the DNS record to point to the new application. Remove any old DNS records pointing to
search.roadsign.pictures
- Save new Fly.IO configuration.
git commit -am "Upgrade to v1.8.2"
- Remove old application.
git checkout main
fly destroy <old_app_name>
- Merge new branch into main
git merge upgrade/v1.8.2