-
-
Save sasajib/8a62769732a1b5b68e4f3509927ced22 to your computer and use it in GitHub Desktop.
Backup and Restore Appwrite, the lazy way π
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| # Make sure to stop Appwrite before this backup, and make sure you have enough space on the machine | |
| docker run --rm \ | |
| -v appwrite_appwrite-mariadb:/backup/appwrite-mariadb \ | |
| -v appwrite_appwrite-redis:/backup/appwrite-redis \ | |
| -v appwrite_appwrite-cache:/backup/appwrite-cache \ | |
| -v appwrite_appwrite-uploads:/backup/appwrite-uploads \ | |
| -v appwrite_appwrite-certificates:/backup/appwrite-certificates \ | |
| -v appwrite_appwrite-functions:/backup/appwrite-functions \ | |
| -v appwrite_appwrite-influxdb:/backup/appwrite-influxdb \ | |
| -v appwrite_appwrite-config:/backup/appwrite-config \ | |
| -v $(pwd)/backups:/archive \ | |
| --env BACKUP_FILENAME="backup-%Y-%m-%dT%H-%M-%S.tar.gz" \ | |
| --entrypoint backup \ | |
| offen/docker-volume-backup:latest |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| # Makre sure the Appwrite did NOT run on this server, and make sure to stop it before this restore. If appwrite ran here already, make sure to stop Appwrite with 'docker-compose down -v'. | |
| # Before running, be in any directory, but make sure `backup.tar.gz` file with your backup is in there | |
| # After restore, make sure to also copy 'docker-compose.yml' and '.env' from the previous server. | |
| # Untar backup | |
| tar -C /tmp -xvf backup.tar.gz | |
| # Restore mariadb | |
| docker run -d --name temp_restore_container -v appwrite_appwrite-mariadb:/backup_restore alpine | |
| docker cp /tmp/backup/appwrite-mariadb temp_restore_container:/backup_restore | |
| docker stop temp_restore_container | |
| docker rm temp_restore_container | |
| # Restore redis | |
| docker run -d --name temp_restore_container -v appwrite_appwrite-redis:/backup_restore alpine | |
| docker cp /tmp/backup/appwrite-redis temp_restore_container:/backup_restore | |
| docker stop temp_restore_container | |
| docker rm temp_restore_container | |
| # Restore cache | |
| docker run -d --name temp_restore_container -v appwrite_appwrite-cache:/backup_restore alpine | |
| docker cp /tmp/backup/appwrite-cache temp_restore_container:/backup_restore | |
| docker stop temp_restore_container | |
| docker rm temp_restore_container | |
| # Restore uploads | |
| docker run -d --name temp_restore_container -v appwrite_appwrite-uploads:/backup_restore alpine | |
| docker cp /tmp/backup/appwrite-uploads temp_restore_container:/backup_restore | |
| docker stop temp_restore_container | |
| docker rm temp_restore_container | |
| # Restore certificates | |
| docker run -d --name temp_restore_container -v appwrite_appwrite-certificates:/backup_restore alpine | |
| docker cp /tmp/backup/appwrite-certificates temp_restore_container:/backup_restore | |
| docker stop temp_restore_container | |
| docker rm temp_restore_container | |
| # Restore functions | |
| docker run -d --name temp_restore_container -v appwrite_appwrite-functions:/backup_restore alpine | |
| docker cp /tmp/backup/appwrite-functions temp_restore_container:/backup_restore | |
| docker stop temp_restore_container | |
| docker rm temp_restore_container | |
| # Restore influxdb | |
| docker run -d --name temp_restore_container -v appwrite_appwrite-influxdb:/backup_restore alpine | |
| docker cp /tmp/backup/appwrite-influxdb temp_restore_container:/backup_restore | |
| docker stop temp_restore_container | |
| docker rm temp_restore_container | |
| # Restore config | |
| docker run -d --name temp_restore_container -v appwrite_appwrite-config:/backup_restore alpine | |
| docker cp /tmp/backup/appwrite-config temp_restore_container:/backup_restore | |
| docker stop temp_restore_container | |
| docker rm temp_restore_container |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment