Restore an environment from a backup
Back to home
On this page
Once you have backups of your environment, you can restore data from a previous point.
To restore an environment, you need an Admin role for that environment type.
1. List available backups
To restore an environment, first select one of the available backups:
Run the following command:
upsun backups
You get a response similar to the following:
Backups on the project My Project (1234567abcdef), environment main (type: production):
+---------------------------+----------------------------+------------+
| Created | Backup ID | Restorable |
+---------------------------+----------------------------+------------+
| 2022-08-15T09:48:58+01:00 | 5ouvtgo4v75axijww7sqnftste | true |
| 2022-07-09T14:17:17+01:00 | 7jks7dru5xpx5p5id5wtypur2y | true |
| 2022-06-22T18:33:29+01:00 | f3jbyxlhtmalco67fmfoxs7n4m | true |
+---------------------------+----------------------------+------------+
Select one of the backups marked as Restorable and copy its Backup ID.
- Navigate to the environment where you want to see backups.
- Click Backups.
Select one of the backups marked as having completed successfully .
2. Restore from a backup
To restore the backup you’ve selected, follow these steps:
-
Run the following command:
upsun backup:restore BACKUP_ID
-
Press
enter
to agree with the consequences and continue.
- Next to the backup you’ve selected, click More .
- Click Restore.
- Read through the consequences and click Yes, Restore.
The data is restored and your backed-up environment is deployed. This deployment uses the built app, including variables, from when the backup was taken.
Warning
The code is also initially restored, but Upsun doesn’t modify your Git repository. So any future (re)deployments use the current Git repository to build the environment.
To restore your code to its previous state when the backup was taken, use Git commands such as revert.
Note that you can also opt out of restoring the code entirely by using the --no-code
flag.
For more information, see how backup and restore works on Upsun.
Also, see how resource allocation works when you restore a backup.
Restore to a different environment
You can restore backups to a different environment than they were created on using the CLI:
-
Switch to the branch where the backup was created.
-
To restore your backup to an existing environment, run the following command:
upsun backup:restore --target=TARGET_ENVIRONMENT_NAME BACKUP_ID
If your target environment doesn’t exist yet, you can create it by branching an existing environment. The new target environment will be an exact copy of the existing (parent) environment.
To do so, use the
--branch-from
option to specify the parent of your new target environment:upsun backup:restore --target=TARGET_ENVIRONMENT_NAME --branch-from=PARENT_ENVIRONMENT_NAME BACKUP_ID