Before you start, we recommend you backup your system, so you can go back if anything goes wrong.
TurnKey Linux appliances are configured by default to automatically install the latest security updates. Non-security package updates are not automatically installed, because there is always the risk that a new version of a package will somehow break existing functionality.
Since a TurnKey Linux appliance is pretty much a standard Ubuntu system under the hood it can be updated at the package-level just like any other Ubuntu or Debian based system:
apt-get update apt-get dist-upgrade
The result is a system that has the latest package versions available in the base distribution (e.g., Ubuntu Hardy). Keep in mind that some appliances may include components that can not be managed through the APT package management system and may need to be upgraded by other means (e.g., Ruby gems).
Note that upgrading packages to the latest versions is not exactly equivalent to upgrading to a new version of an appliance because a new appliance may include a different configuration of components (e.g., the new Rails appliance is based on Phusion Passenger and not mongrel).
Upgrading to a newer appliance version
The recommended way to upgrade to a newer appliance version is to use TKLBAM to migrate your data and configurations from the old appliance to a fresh installation of a new version of the same appliance. See the TKLBAM documentation for details.
Why you can't upgrade in-place to a newer version of an appliance
Users often ask for an easy way to upgrade one appliance version to a newer appliance version in-place. This is technically problematic because we don't want to prevent users from customizing an appliance to fit their needs. TurnKey just give users a better starting point by pre-integrating the best selection of components. Since it's impossible to anticipate all the possible ways in which an appliance has changed since installation it's dangerous to try and change the configuration automatically in place.
Rather than trying to upgrade in-place, a technically safer solution is to separate the system from the data it works on and then provide a backup and migration mechanism so users that are interested can move their data from one appliance version to another and re-apply any tweaks they made to the old system, if necessary.