Convert Community Edition to Enterprise Edition
DETAILS: Tier: Free, Premium, Ultimate Offering: Self-managed
To convert an existing GitLab Community Edition (CE) server installed using the Linux packages to GitLab Enterprise Edition (EE), you install the EE package on top of CE.
Converting from the same version of CE to EE is not explicitly necessary, and any standard upgrade (for example, CE 12.0 to EE 12.1) should work. However, in the following steps we assume that you are upgrading the same version (for example, CE 12.1 to EE 12.1), which is recommended.
WARNING: When updating to EE from CE, avoid reverting back to CE if you plan to go to EE again in the future. Reverting back to CE can cause database issues that may require Support intervention.
The steps can be summed up to:
-
Make a GitLab backup.
-
Find the installed GitLab version:
For Debian/Ubuntu
sudo apt-cache policy gitlab-ce | grep Installed
The output should be similar to:
Installed: 13.0.4-ce.0
. In that case, the equivalent Enterprise Edition version is:13.0.4-ee.0
. Write this value down.For CentOS/RHEL
sudo rpm -q gitlab-ce
The output should be similar to:
gitlab-ce-13.0.4-ce.0.el8.x86_64
. In that case, the equivalent Enterprise Edition version is:gitlab-ee-13.0.4-ee.0.el8.x86_64
. Write this value down. -
Add the
gitlab-ee
Apt or Yum repository:For Debian/Ubuntu
curl --silent "https://packages.gitlab.com/install/repositories/gitlab/gitlab-ee/script.deb.sh" | sudo bash
For CentOS/RHEL
curl --silent "https://packages.gitlab.com/install/repositories/gitlab/gitlab-ee/script.rpm.sh" | sudo bash
The above command finds your OS version and automatically set up the repository. If you are not comfortable installing the repository through a piped script, you can first check its contents.
NOTE: If you want to use
dpkg
/rpm
instead ofapt-get
/yum
, go through the first step to find the current GitLab version, then follow Upgrade using a manually downloaded package, and then add your license. -
Install the
gitlab-ee
package. The install automatically uninstalls thegitlab-ce
package on your GitLab server.reconfigure
Omnibus right after thegitlab-ee
package is installed. Make sure that you install the exact same GitLab version:For Debian/Ubuntu
## Make sure the repositories are up-to-date sudo apt-get update ## Install the package using the version you wrote down from step 1 sudo apt-get install gitlab-ee=13.0.4-ee.0 ## Reconfigure GitLab sudo gitlab-ctl reconfigure
For CentOS/RHEL
## Install the package using the version you wrote down from step 1 sudo yum install gitlab-ee-13.0.4-ee.0.el8.x86_64 ## Reconfigure GitLab sudo gitlab-ctl reconfigure
-
Now activate GitLab Enterprise Edition by adding your license.
-
After you confirm that GitLab is working as expected, you may remove the old Community Edition repository:
For Debian/Ubuntu
sudo rm /etc/apt/sources.list.d/gitlab_gitlab-ce.list
For CentOS/RHEL
sudo rm /etc/yum.repos.d/gitlab_gitlab-ce.repo
-
Optional. Set up the Elasticsearch integration to enable advanced search.
That's it! You can now use GitLab Enterprise Edition! To upgrade to a newer version, follow Upgrading Linux package instances.