Upgrade Bitbucket Data Center
Plan your upgrade
1. Determine your upgrade path
You can update from any previous version of Bitbucket Server (or Stash) to the latest version, as there is no required upgrade path.
Bitbucket 7 is a major upgrade
Be sure to read the Bitbucket Server 7.0 release notes, take a full backup, and test your upgrade in a non-production environment before upgrading your production site.
Upgrading from a version older than Bitbucket 7 disables all user-installed apps on startup
Be sure to update your own apps and check the Atlassian Marketplace to ensure 3rd-party apps are compatible with Bitbucket Server 7 before upgrading.
Upgrading to the next bug fix update
If you are upgrading a multi-node Bitbucket cluster to the next bug fix update (for example, from 7.9.0 to 7.9.4), you can upgrade with no downtime.
2. Complete pre-upgrade checks
- Check the Version specific upgrade notes for the version you plan to upgrade to (and any in between).
- Go to > Support Tools, then review the Log analyzer for any issues that may need to be resolved.
Check the compatibility of your apps with the version you plan to upgrade to.
- Go to > Manage apps > Bitbucket update check.
Choose the version you plan to upgrade to then hit Check.If you have incompatible apps
If your users rely on particular apps, you may want to wait until they are compatible before upgrading Bitbucket. App vendors generally update their apps very soon after a major release.
Good to know:
- Upgrading from a version older than Bitbucket Server 6 will automatically disable all user-installed apps. You will need to enable your apps after successfully upgrading, regardless of compatibility with Bitbucket Server 6.
- You can disable an app temporarily if it is not yet compatible.
3. Upgrade Bitbucket in a test environment
- Create a staging copy of your current production environment.
- Follow the steps below to upgrade your test environment.
- Test any unsupported apps, customizations and proxy configuration (if possible) before upgrading your production environment.
Upgrade Bitbucket Data Center
1. Back up your data
Determine which backup strategy to use.Summary of the different backup strategies for Bitbucket...
For Bitbucket Server (version 4.8 or later) instances, you can use Zero Downtime Backup, the Backup Client (version 2.7 or later), or DIY Backup (version 2.12 or later) while Bitbucket is running, or just stop Bitbucket and zip up / snapshot the home directory and database and keep them somewhere safe.
For Bitbucket Data Center (version 4.8 or later) instances, you can use Zero Downtime Backup, DIY Backup, or take snapshots of the shared home directory (on NFS) and database while all nodes are stopped.
For Bitbucket mirrors, the home directory doesn't store any persistent state that can't be reconstructed from the primary Bitbucket instance, but you should still make sure you have a backup of at least the important configuration files such as SSL certificate,
bitbucket.propertiesfile, and so on in a safe place. See How do I back up my mirrors? for more information.
See the article Data recovery and backups for detailed information and guidance on creating an effective backup strategy.
- Back up all the data in your Bitbucket home directory and external database.
2. Migrate customizations
Bitbucket 5.0 changed where custom server configurations are kept. Previously, Tomcat container customizations were made in the
server.xml file, located in either the
<Bitbucket home directory>/shared directory (from 3.8 to 4.14), or in
<Stash installation directory>/conf (for 3.7 and earlier).
First, determine if you've made customizations to your server.xml file. You would have made these changes if you modified the port, context path, or the Proxying and securing Bitbucket Server, or if you are running Bitbucket Server behind a proxy and modified the Connector element.
Migrate changes in the bitbucket.properties file in your existing Bitbucket home directory. The
bitbucket.properitesfile uses a slightly different syntax, so it is not merely a copy and paste procedure.
Read the page Migrate customizations from server.xml to bitbucket.properties and follow the instructions to migrate your customizations.For custom configurations in Bitbucket Data Center...
Bitbucket Data Center instances on version 3.8 or later, the single
server.xmlfile in the
<Bitbucket home directory>/shareddirectory replaces all the copies of
server.xmllocated in the
<Bitbucket installation directory>/confdirectories of the cluster nodes using previous versions of Bitbucket Server (or Stash).
3. Stop the cluster
You must stop all the nodes in the cluster before upgrading. For more info, see Starting and stopping Bitbucket.
We recommend configuring your load balancer to redirect traffic away from Bitbucket until the upgrade is complete on all nodes.
4. Download Bitbucket
Download the appropriate file for your operating system - https://www.atlassian.com/software/bitbucket/download-archives.
5. Upgrade the first node
To upgrade the first node:
Extract (unzip) the files to a directory (this will be your new installation directory, and must be different to your existing installation directory)
Update the value of BITBUCKET_HOME in the
<Installation-directory>/bin/set-bitbucket-home.shfile so the new Bitbucket installation points to your existing Bitbucket home directory.
If you use a BITBUCKET_HOME environment variable to specify the home directory location, no change is required
Copy any other immediately required customizations from the old version to the new one (for example if you are not running Bitbucket on the default ports or if you manage users externally, you'll need to update / copy the relevant files)
If you configured Bitbucket to run as a Linux service, don't forget to update its service configuration as well. Learn more about running Bitbucket as a Linux service.
Start Bitbucket on the node. Learn more about starting Bitbucket
6. Copy Bitbucket to remaining nodes
The next step is to replicate your upgraded Bitbucket directories to other nodes in the cluster.
Stop Bitbucket on the first node.
Copy the installation directory and local home directory from the first node to the next node.
If the path to the local home directory is different on this node, edit the /bin/set-bitbucket-home.sh (or set-bitbucket-home.bat on Windows) to point to the correct location.
Start Bitbucket, and confirm that everything works as expected.
Stop Bitbucket on this node before continuing with the next node.
Repeat this process for each remaining node.
7. Start Bitbucket and check cluster connectivity
Once all nodes have been upgraded you can start Bitbucket Data Center on each node, one at a time (starting up multiple nodes simultaneously can lead to serious failures).
The Cluster monitoring console (Administration > Settings > Clustering) includes information about the active cluster nodes. When the cluster is running properly, you should be able to see the details of each node.