How to install GitLab on CentOS 7

Share on Social Media

In this configuration guide, you will learn, how to install GitLab on CentOS 7 or other Redhat based Linux distros. #centlinux #linux #git

What is GitLab? :

GitLab is an open-source web-based git repository manager providing wiki, issue-tracking and CI/CD (Continuous Integration/Common Deployment). GitLab available in two editions, CE (Community Edition) and EE (Enterprise Edition). The GitLab CE has limited features while the GitLab EE is the commercial product and loaded with many additional features. Both GitLab CE & EE editions are available to download, however, the GitLab EE will provides same features as GitLab CE unless one acquires a license from GitLab. In this article, we will install GitLab on CentOS 7.

System Specification:

We have configured a virtual machine with following specification.

  • Hostname – gitlab-server.itlab.com
  • IP Address – 192.168.116.128/24
  • CPU – 3.2 Ghz (2 Cores)
  • Memory – 3 GB
  • Storage – 60 GB

Install GitLab on CentOS 7:

Connect to gitlab-server.itlab.com using ssh, and install required packages using yum command.

# yum install -y curl policycoreutils-python

It also requires postfix and openssh-server packages. But both of them are already installed with minimal installation of Red Hat Enterprise Linux (RHEL) or CentOS 7.6.

Allow the http service through Linux firewall.

# firewall-cmd --permanent --add-service=http
success
# firewall-cmd --reload
success

Add GitLab package repository to yum.

# curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ee/script.rpm.sh | bash
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  6463    0  6463    0     0   3729      0 --:--:--  0:00:01 --:--:--  3729
Detected operating system as rhel/7.
Checking for curl...
Detected curl...
Downloading repository file: https://packages.gitlab.com/install/repositories/gitlab/gitlab-ee/config_file.repo?os=rhel&dist=7&source=script
done.
Installing pygpgme to verify GPG signatures...
Loaded plugins: product-id, search-disabled-repos, subscription-manager
This system is not registered with an entitlement server. You can use subscription-manager to register.
gitlab_gitlab-ee-source/signature                        |  836 B     00:00
Retrieving key from https://packages.gitlab.com/gitlab/gitlab-ee/gpgkey
Importing GPG key 0xE15E78F4:
 Userid     : "GitLab B.V. (package repository signing key) "
 Fingerprint: 1a4c 919d b987 d435 9396 38b9 1421 9a96 e15e 78f4
 From       : https://packages.gitlab.com/gitlab/gitlab-ee/gpgkey
Retrieving key from https://packages.gitlab.com/gitlab/gitlab-ee/gpgkey/gitlab-gitlab-ee-3D645A26AB9FBD22.pub.gpg
gitlab_gitlab-ee-source/signature                        |  951 B     00:01 !!!
gitlab_gitlab-ee-source/primary                            |  175 B   00:02
Package pygpgme-0.3-9.el7.x86_64 already installed and latest version
Nothing to do
Installing yum-utils...
Loaded plugins: product-id, search-disabled-repos, subscription-manager
This system is not registered with an entitlement server. You can use subscription-manager to register.
Package yum-utils-1.1.31-50.el7.noarch already installed and latest version
Nothing to do
Generating yum cache for gitlab_gitlab-ee...
Importing GPG key 0xE15E78F4:
 Userid     : "GitLab B.V. (package repository signing key) "
 Fingerprint: 1a4c 919d b987 d435 9396 38b9 1421 9a96 e15e 78f4
 From       : https://packages.gitlab.com/gitlab/gitlab-ee/gpgkey

The repository is setup! You can now install packages.

Install GitLab on CentOS 7 as follows:

# EXTERNAL_URL="http://gitlab-server.itlab.com" yum install -y gitlab-ee
Loaded plugins: product-id, search-disabled-repos, subscription-manager
This system is not registered with an entitlement server. You can use subscription-manager to register.
Resolving Dependencies
--> Running transaction check
---> Package gitlab-ee.x86_64 0:11.5.3-ee.0.el7 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

================================================================================
 Package        Arch        Version                 Repository             Size
================================================================================
Installing:
 gitlab-ee      x86_64      11.5.3-ee.0.el7         gitlab_gitlab-ee      495 M

Transaction Summary
================================================================================
Install  1 Package

Total download size: 495 M
Installed size: 1.4 G
Downloading packages:
warning: /var/cache/yum/x86_64/7Server/gitlab_gitlab-ee/packages/gitlab-ee-11.5.3-ee.0.el7.x86_64.rpm: Header V4 RSA/SHA1 Signature, key ID f27eab47: NOKEY
Public key for gitlab-ee-11.5.3-ee.0.el7.x86_64.rpm is not installed
gitlab-ee-11.5.3-ee.0.el7.x86_64.rpm                       | 495 MB   65:20
Retrieving key from https://packages.gitlab.com/gitlab/gitlab-ee/gpgkey
Importing GPG key 0xE15E78F4:
 Userid     : "GitLab B.V. (package repository signing key) "
 Fingerprint: 1a4c 919d b987 d435 9396 38b9 1421 9a96 e15e 78f4
 From       : https://packages.gitlab.com/gitlab/gitlab-ee/gpgkey
Retrieving key from https://packages.gitlab.com/gitlab/gitlab-ee/gpgkey/gitlab-gitlab-ee-3D645A26AB9FBD22.pub.gpg
Importing GPG key 0xF27EAB47:
 Userid     : "GitLab, Inc. "
 Fingerprint: dbef 8977 4ddb 9eb3 7d9f c3a0 3cfc f9ba f27e ab47
 From       : https://packages.gitlab.com/gitlab/gitlab-ee/gpgkey/gitlab-gitlab-ee-3D645A26AB9FBD22.pub.gpg
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  Installing : gitlab-ee-11.5.3-ee.0.el7.x86_64                             1/1
...
...
...
Running handlers:
Running handlers complete
Chef Client finished, 457/672 resources updated in 18 minutes 23 seconds
gitlab Reconfigured!

       *.                  *.
      ***                 ***
     *****               *****
    .******             *******
    ********            ********
   ,,,,,,,,,***********,,,,,,,,,
  ,,,,,,,,,,,*********,,,,,,,,,,,
  .,,,,,,,,,,,*******,,,,,,,,,,,,
      ,,,,,,,,,*****,,,,,,,,,.
         ,,,,,,,****,,,,,,
            .,,,***,,,,
                ,*,.



     _______ __  __          __
    / ____(_) /_/ /   ____ _/ /_
   / / __/ / __/ /   / __ `/ __ 
  / /_/ / / /_/ /___/ /_/ / /_/ /
  ____/_/__/_____/__,_/_.___/


Thank you for installing GitLab!
GitLab should be available at http://gitlab-server.itlab.com

For a comprehensive list of configuration options please see the Omnibus GitLab readme
https://gitlab.com/gitlab-org/omnibus-gitlab/blob/master/README.md

  Verifying  : gitlab-ee-11.5.3-ee.0.el7.x86_64                             1/1

Installed:
  gitlab-ee.x86_64 0:11.5.3-ee.0.el7

Complete!

GitLab EE (Enterprise Edition) has been installed on our system.

Configure GitLab Server:

Browse the URL http://gitlab.itlab.com using a client’s browser.

GitLab-Change-Your-Password

Set the GitLab password for root user.

GitLab-Sign-in

Sign-in to GitLab using new password.

GitLab-Projects-Dashboard

Now, we are connected with our GitLab server.

Conclusion:

In this configuration guide, you have learned, how to install GitLab on CentOS 7 or other Redhat based Linux OS.

Scroll to Top