Discover the process to install GitLab on CentOS 7 with our easy-to-follow instructions. Set up a powerful version control and collaboration platform for your development team. #centlinux #linux #git
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.
GitLab is a comprehensive DevOps platform designed for the entire software development lifecycle. It integrates tools for version control, project management, continuous integration/continuous deployment (CI/CD), and more. GitLab provides a single application for managing your development processes, enabling teams to collaborate effectively and streamline workflows.
Here’s a detailed overview of GitLab, including its features, components, and use cases:
.gitlab-ci.yml
files to define stages, jobs, and scripts.Command | Description |
---|---|
gitlab-rails console | Open the Rails console for administrative tasks. |
gitlab-ctl reconfigure | Reconfigure GitLab after changes to configuration files. |
gitlab-ctl restart | Restart GitLab services. |
gitlab-ctl status | Check the status of GitLab services. |
gitlab-ctl upgrade | Upgrade GitLab to the latest version. |
Feature | GitLab | GitHub | Bitbucket |
---|---|---|---|
Version Control | Git | Git | Git, Mercurial |
CI/CD | Built-in CI/CD Pipelines | GitHub Actions (newer feature) | Built-in Pipelines (Bitbucket Pipelines) |
Issue Tracking | Advanced issues and boards | Basic issues and projects | Basic issues and boards |
Project Management | Advanced boards, milestones | Projects and basic task management | Advanced boards, milestones |
Security | Advanced security features | Basic security features | Basic security features |
Code Review | Merge Requests and code review | Pull Requests and code review | Pull Requests and code review |
Free Tier | Generous free tier with CI/CD | Free tier with limited features | Free tier with limited features |
GitLab is a powerful, integrated DevOps platform offering a suite of tools for version control, project management, CI/CD, and more. Whether you’re managing a personal project or working as part of a large team, GitLab provides the features you need to streamline development processes and ensure successful project outcomes.
Recommended Online Training: GitHub Ultimate: Master Git and GitHub – Beginner to Expert
We have configured a Linux virtual machine with following specification for installing GitLab Server .
Read Also: How to install GitLab on CentOS 8
Connect to Linux Server (gitlab-server.itlab.com) by 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
Install GitLab package repository as follows.
# 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 Linux system.
Browse the URL http://gitlab.itlab.com using a client’s browser.
Since, we are login for the first time on our GitLab Server , therefore, we need to set the GitLab password for root user.
After Setting GitLab Password, we are redirected to the GitLab Server Login Page.
Sign-in to GitLab Server using new password.
Now, we are connected with our GitLab server.
If you are new to Linux and facing difficulty in working at Linux Bash prompt. We recommend that, you should read The Linux Command Line, 2nd Edition: A Complete Introduction by William Shotts.
Congratulations on setting up GitLab Server on CentOS 7! You now have a powerful platform for version control, project management, and continuous integration to support your development projects. I hope this guide has made the installation process clear and straightforward for you.
If you need further assistance with GitLab setup, configuration, or any other Linux-related tasks, feel free to check out my Fiverr profile for a range of professional services. Whether it’s GitLab administration, troubleshooting, or other technical support, I’m here to help you achieve your goals efficiently.
Thank you for reading, and happy developing with GitLab!
Learn how to change Apache document root in Linux by following this step-by-step guide. Adjust…
Discover how to change Apache port in Linux easily. Follow our simple guide to modify…
Learn how to create a virtual host in Apache Server with this comprehensive guide. Set…
Discover 10 practical tasks for the RHCSA exam with step-by-step solutions. Boost your Linux skills…
Discover the ultimate Fail2ban configuration guide. Learn how to set up, customize, and optimize Fail2ban…
Explore the ultimate guide to VPS servers and learn everything about Virtual Private Servers, including…
This website uses cookies.
View Comments
very helpful thanks