1. A method, comprising: instantiating, by a processor of a client device, a first version of a software appliance; receiving, from a user of the software appliance, user-inputted data that is used by the first version of the software appliance during operation; capturing an image of the first version of the software appliance comprising an initial configuration state; aggregating one or more changes to the initial configuration state to produce a current configuration state of the first version of the software appliance; registering, by the processor of the client device, the current configuration state and the user-inputted data of the first version of the software appliance; instantiating, by the processor of the client device, a second version of the software appliance; and exporting, by the processor of the client device, the current configuration state and the user-inputted data of the first version of the software appliance to the second version of the software appliance.