Upgrade your project
This is the guide for upgrading existing installations in general.
In this article, you will find everything you need to upgrade your Umbraco CMS project.
You will find instructions on how to upgrade to a new minor or major version as well as how to run upgrades unattended.
The following lists a few things to be aware of before initiating an upgrade of your Umbraco CMS project.
- Sometimes there are exceptions to general upgrade guidelines. These are listed in the version-specific guide. Be sure to read this article before moving on.
- Check if your setup meets the requirements for the new versions you will be upgrading your project to.
- Things may go wrong for different reasons. Be sure to ALWAYS keep a backup of both your site's files and the database. This way you can always return to a version that you know works.
- Before upgrading to a new major version, check if the packages you're using are compatible with the version you're upgrading to. On the package's download page, in the Project compatibility area, click View details to check version-specific compatibility.
It is necessary to run the upgrade installer on each environment of your Umbraco site. This means that you need to repeat the steps below on each of your environments in order to complete the upgrade.
The steps outlined in this article applies to moderne Umbraco from version 10 and later versions.
Are you upgrading to a minor for Umbraco 6, 7 or 8 you can find the appropriate guide below:
You can upgrade to a new major of Umbraco CMS directly by using NuGet.
Switching to a new major of Umbraco CMS also means switching to a new .NET version. You need to make sure that any packages used on your site are compatible with this version before upgrading.
The package compatibility can be checked on the package's download page. Locate the Project compatibility area and select View details to check version-specific compatibility.
Use the table below to determine which .NET version to upgrade to when going through the steps below.
CMS version | .NET version |
---|---|
11 | 7.0 |
10 | 6.0.5 |
It's recommended that you upgrade the site offline and test the upgrade fully before deploying it to the production environment.
- 1.Stop your site in IIS to prevent any changes from being made while you are upgrading.
- 2.Open your Umbraco project in Visual Studio.
- 3.Right-click on the project name in the Solution Explorer and select Properties.
- 4.Select the .NET version from the Target Framework drop-down.
- 5.Go to Tools > NuGet Package Manager > Manage NuGet Packages for Solution...
- 6.Go to the Installed tab in the NuGet Package manager.
- 7.Choose Umbraco.Cms.
- 8.Select the correct version from the Version drop-down.
- 9.Click Install to upgrade your project.
- 10.
- 11.Restart your site in IIS, build, and run your project to finish the installation.
NuGet installs the latest version of the package when you use the
dotnet add package
command unless you specify a package version:dotnet add package Umbraco.Cms --version <VERSION>
Add a package reference to your project by executing the
dotnet add package Umbraco.Cms
command in the directory that contains your project file.Run
dotnet restore
to install the package.If you are using SQL CE in your project you will need to run
dotnet add package Umbraco.Cms.SqlCe --version <VERSION>
too before running the dotnet restore
command.When the command completes, open the .csproj file to make sure the package reference was updated:
.csproj
<ItemGroup>
<PackageReference Include="Umbraco.Cms" Version="x.x.x" />
</ItemGroup>
When upgrading your Umbraco project, it is possible to enable the upgrade to run unattended. This means that you will not need to run through the installation wizard when upgrading.
Below you will find the steps you need to take in order to upgrade your project unattended.
Are you running a load balanced setup with multiple servers and environments?
- 1.Add the
Umbraco:Cms:Unattended:UpgradeUnattended
configuration key. - 2.Set the value of the key to
true
.
appsettings.json
{
"Umbraco": {
"CMS": {
"Unattended": {
"UpgradeUnattended": true
}
}
}
}
With the correct configuration applied, the project will be upgraded on the next boot.
The Runtime level will use
Run
instead of Upgrade
to allow the website to continue to boot up directly after the migration is run. This happens instead of initiating the otherwise required restart.The upgrade is run after Composers but before Components and the
UmbracoApplicationStartingNotification
. This is because the migration requires services that are registered in Composers and Components require that Umbraco and the database are ready.Follow the steps outlined below to use unattended upgrades in a load balanced setup.
- 1.
- 2.Deploy to all environments.
- 3.Set the
Umbraco:CMS:Unattended:UpgradeUnattended
configuration key totrue
for the Main server only. - 4.Boot the Main server and the upgrade will run automatically.
- 5.Wait for the upgrade to complete.
- 6.Boot the Read-Only servers and make sure they do not show the “upgrade required” screen.
Last modified 22d ago