Recommended Installation Method
Official Linux package
This is the recommended method for getting started. The Linux packages are mature, scalable, and are used today on GitLab.com. If you need additional flexibility and resilience, we recommend deploying GitLab as described in the reference architecture documentation.
Linux installation is quicker to install, easier to upgrade and contains features to enhance reliability not found in other methods. Install via a single package (also known as Omnibus) that bundles all the different services and tools required to run GitLab. At least 4 GB of RAM is recommended.
-
Close
For Ubuntu 20.04,
arm64
packages are also available.1. Install and configure the necessary dependencies
sudo apt-get install -y curl openssh-server ca-certificates tzdata perl
Next, install Postfix to send notification emails. If you want to use another solution to send emails please skip this step and configure an external SMTP server after GitLab has been installed.
sudo apt-get install -y postfix
During Postfix installation a configuration screen may appear. Select 'Internet Site' and press enter. Use your server's external DNS for 'mail name' and press enter. If additional screens appear, continue to press enter to accept the defaults.
2. Add the GitLab package repository and install the package
Add the GitLab package repository.
curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash
Next, install the GitLab package. Make sure you have correctly set up your DNS, and change
https://gitlab.example.com
to the URL at which you want to access your GitLab instance. Installation will automatically configure and start GitLab at that URL.For
https://
URLs, GitLab will automatically request a certificate with Let's Encrypt, which requires inbound HTTP access and a valid hostname. You can also use your own certificate or just usehttp://
(withouts
).If you would like to specify a custom password for the initial administrator user (
root
), check the documentation. If a password is not specified, a random password will be automatically generated.sudo EXTERNAL_URL="https://gitlab.example.com" apt-get install gitlab-ce
3. Browse to the hostname and login
Unless you provided a custom password during installation, a password will be randomly generated and stored for 24 hours in
/etc/gitlab/initial_root_password
. Use this password with usernameroot
to login.See our documentation for detailed instructions on installing and configuration.
4. Set up your communication preferences
Visit our email subscription preference center to let us know when to communicate with you. We have an explicit email opt-in policy so you have complete control over what and how often we send you emails.
Twice a month, we send out the GitLab news you need to know, including new features, integrations, docs, and behind the scenes stories from our dev teams. For critical security updates related to bugs and system performance, sign up for our dedicated security newsletter.
Important note: If you do not opt-in to the security newsletter, you will not receive security alerts.
5. Recommended next steps
After completing your installation, consider the recommended next steps, including authentication options and sign-up restrictions.
For Ubuntu 20.04,
arm64
packages are also available.1. Install and configure the necessary dependencies
sudo apt-get update sudo apt-get install -y curl openssh-server ca-certificates tzdata perl
Next, install Postfix to send notification emails. If you want to use another solution to send emails please skip this step and configure an external SMTP server after GitLab has been installed.
sudo apt-get install -y postfix
During Postfix installation a configuration screen may appear. Select 'Internet Site' and press enter. Use your server's external DNS for 'mail name' and press enter. If additional screens appear, continue to press enter to accept the defaults.
2. Add the GitLab package repository and install the package
Add the GitLab package repository.
curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ee/script.deb.sh | sudo bash
Next, install the GitLab package. Make sure you have correctly set up your DNS, and change
https://gitlab.example.com
to the URL at which you want to access your GitLab instance. Installation will automatically configure and start GitLab at that URL.For
https://
URLs, GitLab will automatically request a certificate with Let's Encrypt, which requires inbound HTTP access and a valid hostname. You can also use your own certificate or just usehttp://
(withouts
).If you would like to specify a custom password for the initial administrator user (
root
), check the documentation. If a password is not specified, a random password will be automatically generated.sudo EXTERNAL_URL="https://gitlab.example.com" apt-get install gitlab-ee
3. Browse to the hostname and login
Unless you provided a custom password during installation, a password will be randomly generated and stored for 24 hours in
/etc/gitlab/initial_root_password
. Use this password with usernameroot
to login.See our documentation for detailed instructions on installing and configuration.
4. Set up your communication preferences
Visit our email subscription preference center to let us know when to communicate with you. We have an explicit email opt-in policy so you have complete control over what and how often we send you emails.
Twice a month, we send out the GitLab news you need to know, including new features, integrations, docs, and behind the scenes stories from our dev teams. For critical security updates related to bugs and system performance, sign up for our dedicated security newsletter.
Important note: If you do not opt-in to the security newsletter, you will not receive security alerts.
5. Recommended next steps
After completing your installation, consider the recommended next steps, including authentication options and sign-up restrictions.
-
Close
For Debian 10,
arm64
packages are also available.1. Install and configure the necessary dependencies
sudo apt-get install -y curl openssh-server ca-certificates perl
Next, install Postfix to send notification emails. If you want to use another solution to send emails please skip this step and configure an external SMTP server after GitLab has been installed.
sudo apt-get install -y postfix
During Postfix installation a configuration screen may appear. Select 'Internet Site' and press enter. Use your server's external DNS for 'mail name' and press enter. If additional screens appear, continue to press enter to accept the defaults.
2. Add the GitLab package repository and install the package
Add the GitLab package repository.
curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash
Next, install the GitLab package. Make sure you have correctly set up your DNS, and change
https://gitlab.example.com
to the URL at which you want to access your GitLab instance. Installation will automatically configure and start GitLab at that URL.For
https://
URLs, GitLab will automatically request a certificate with Let's Encrypt, which requires inbound HTTP access and a valid hostname. You can also use your own certificate or just usehttp://
(withouts
).If you would like to specify a custom password for the initial administrator user (
root
), check the documentation. If a password is not specified, a random password will be automatically generated.sudo EXTERNAL_URL="https://gitlab.example.com" apt-get install gitlab-ce
3. Browse to the hostname and login
Unless you provided a custom password during installation, a password will be randomly generated and stored for 24 hours in
/etc/gitlab/initial_root_password
. Use this password with usernameroot
to login.See our documentation for detailed instructions on installing and configuration.
4. Set up your communication preferences
Visit our email subscription preference center to let us know when to communicate with you. We have an explicit email opt-in policy so you have complete control over what and how often we send you emails.
Twice a month, we send out the GitLab news you need to know, including new features, integrations, docs, and behind the scenes stories from our dev teams. For critical security updates related to bugs and system performance, sign up for our dedicated security newsletter.
Important note: If you do not opt-in to the security newsletter, you will not receive security alerts.
5. Recommended next steps
After completing your installation, consider the recommended next steps, including authentication options and sign-up restrictions.
For Debian 10,
arm64
packages are also available.1. Install and configure the necessary dependencies
sudo apt-get update sudo apt-get install -y curl openssh-server ca-certificates perl
Next, install Postfix to send notification emails. If you want to use another solution to send emails please skip this step and configure an external SMTP server after GitLab has been installed.
sudo apt-get install -y postfix
During Postfix installation a configuration screen may appear. Select 'Internet Site' and press enter. Use your server's external DNS for 'mail name' and press enter. If additional screens appear, continue to press enter to accept the defaults.
2. Add the GitLab package repository and install the package
Add the GitLab package repository.
curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ee/script.deb.sh | sudo bash
Next, install the GitLab package. Make sure you have correctly set up your DNS, and change
https://gitlab.example.com
to the URL at which you want to access your GitLab instance. Installation will automatically configure and start GitLab at that URL.For
https://
URLs, GitLab will automatically request a certificate with Let's Encrypt, which requires inbound HTTP access and a valid hostname. You can also use your own certificate or just usehttp://
(withouts
).If you would like to specify a custom password for the initial administrator user (
root
), check the documentation. If a password is not specified, a random password will be automatically generated.sudo EXTERNAL_URL="https://gitlab.example.com" apt-get install gitlab-ee
3. Browse to the hostname and login
Unless you provided a custom password during installation, a password will be randomly generated and stored for 24 hours in
/etc/gitlab/initial_root_password
. Use this password with usernameroot
to login.See our documentation for detailed instructions on installing and configuration.
4. Set up your communication preferences
Visit our email subscription preference center to let us know when to communicate with you. We have an explicit email opt-in policy so you have complete control over what and how often we send you emails.
Twice a month, we send out the GitLab news you need to know, including new features, integrations, docs, and behind the scenes stories from our dev teams. For critical security updates related to bugs and system performance, sign up for our dedicated security newsletter.
Important note: If you do not opt-in to the security newsletter, you will not receive security alerts.
5. Recommended next steps
After completing your installation, consider the recommended next steps, including authentication options and sign-up restrictions.
-
Close
For CentOS and RedHat 8,
arm64
packages are also available.1. Install and configure the necessary dependencies
On CentOS 8, the commands below will also open HTTP, HTTPS and SSH access in the system firewall. This is an optional step, and you can skip it if you intend to access GitLab only from your local network.
sudo dnf install -y curl policycoreutils openssh-server openssh-clients # Enable OpenSSH server daemon if not enabled: sudo systemctl status sshd sudo systemctl enable sshd sudo systemctl start sshd # Check if opening the firewall is needed with: sudo systemctl status firewalld sudo firewall-cmd --permanent --add-service=http sudo firewall-cmd --permanent --add-service=https sudo systemctl reload firewalld
Next, install Postfix to send notification emails. If you want to use another solution to send emails please skip this step and configure an external SMTP server after GitLab has been installed.
sudo dnf install postfix sudo systemctl enable postfix sudo systemctl start postfix
During Postfix installation a configuration screen may appear. Select 'Internet Site' and press enter. Use your server's external DNS for 'mail name' and press enter. If additional screens appear, continue to press enter to accept the defaults.
2. Add the GitLab package repository and install the package
Add the GitLab package repository.
curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash
Next, install the GitLab package. Make sure you have correctly set up your DNS, and change
https://gitlab.example.com
to the URL at which you want to access your GitLab instance. Installation will automatically configure and start GitLab at that URL.For
https://
URLs, GitLab will automatically request a certificate with Let's Encrypt, which requires inbound HTTP access and a valid hostname. You can also use your own certificate or just usehttp://
(withouts
).If you would like to specify a custom password for the initial administrator user (
root
), check the documentation. If a password is not specified, a random password will be automatically generated.sudo EXTERNAL_URL="https://gitlab.example.com" dnf install -y gitlab-ce
3. Browse to the hostname and login
Unless you provided a custom password during installation, a password will be randomly generated and stored for 24 hours in
/etc/gitlab/initial_root_password
. Use this password with usernameroot
to login.See our documentation for detailed instructions on installing and configuration.
4. Set up your communication preferences
Visit our email subscription preference center to let us know when to communicate with you. We have an explicit email opt-in policy so you have complete control over what and how often we send you emails.
Twice a month, we send out the GitLab news you need to know, including new features, integrations, docs, and behind the scenes stories from our dev teams. For critical security updates related to bugs and system performance, sign up for our dedicated security newsletter.
Important note: If you do not opt-in to the security newsletter, you will not receive security alerts.
5. Recommended next steps
After completing your installation, consider the recommended next steps, including authentication options and sign-up restrictions.
For CentOS and RedHat 8,
arm64
packages are also available.1. Install and configure the necessary dependencies
On CentOS 8 (and RedHat 8), the commands below will also open HTTP, HTTPS and SSH access in the system firewall. This is an optional step, and you can skip it if you intend to access GitLab only from your local network.
sudo dnf install -y curl policycoreutils openssh-server perl # Enable OpenSSH server daemon if not enabled: sudo systemctl status sshd sudo systemctl enable sshd sudo systemctl start sshd # Check if opening the firewall is needed with: sudo systemctl status firewalld sudo firewall-cmd --permanent --add-service=http sudo firewall-cmd --permanent --add-service=https sudo systemctl reload firewalld
Next, install Postfix to send notification emails. If you want to use another solution to send emails please skip this step and configure an external SMTP server after GitLab has been installed.
sudo dnf install postfix sudo systemctl enable postfix sudo systemctl start postfix
During Postfix installation a configuration screen may appear. Select 'Internet Site' and press enter. Use your server's external DNS for 'mail name' and press enter. If additional screens appear, continue to press enter to accept the defaults.
2. Add the GitLab package repository and install the package
Add the GitLab package repository.
curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ee/script.rpm.sh | sudo bash
Next, install the GitLab package. Make sure you have correctly set up your DNS, and change
https://gitlab.example.com
to the URL at which you want to access your GitLab instance. Installation will automatically configure and start GitLab at that URL.For
https://
URLs, GitLab will automatically request a certificate with Let's Encrypt, which requires inbound HTTP access and a valid hostname. You can also use your own certificate or just usehttp://
(withouts
).If you would like to specify a custom password for the initial administrator user (
root
), check the documentation. If a password is not specified, a random password will be automatically generated.sudo EXTERNAL_URL="https://gitlab.example.com" dnf install -y gitlab-ee
3. Browse to the hostname and login
Unless you provided a custom password during installation, a password will be randomly generated and stored for 24 hours in
/etc/gitlab/initial_root_password
. Use this password with usernameroot
to login.See our documentation for detailed instructions on installing and configuration.
4. Set up your communication preferences
Visit our email subscription preference center to let us know when to communicate with you. We have an explicit email opt-in policy so you have complete control over what and how often we send you emails.
Twice a month, we send out the GitLab news you need to know, including new features, integrations, docs, and behind the scenes stories from our dev teams. For critical security updates related to bugs and system performance, sign up for our dedicated security newsletter.
Important note: If you do not opt-in to the security newsletter, you will not receive security alerts.
5. Recommended next steps
After completing your installation, consider the recommended next steps, including authentication options and sign-up restrictions.
-
Close
1. Install and configure the necessary dependencies
On CentOS 7, the commands below will also open HTTP, HTTPS and SSH access in the system firewall. This is an optional step, and you can skip it if you intend to access GitLab only from your local network.
sudo yum install -y curl policycoreutils-python openssh-server openssh-clients perl # Enable OpenSSH server daemon if not enabled: sudo systemctl status sshd sudo systemctl enable sshd sudo systemctl start sshd # Check if opening the firewall is needed with: sudo systemctl status firewalld sudo firewall-cmd --permanent --add-service=http sudo firewall-cmd --permanent --add-service=https sudo systemctl reload firewalld
Next, install Postfix to send notification emails. If you want to use another solution to send emails please skip this step and configure an external SMTP server after GitLab has been installed.
sudo yum install postfix sudo systemctl enable postfix sudo systemctl start postfix
During Postfix installation a configuration screen may appear. Select 'Internet Site' and press enter. Use your server's external DNS for 'mail name' and press enter. If additional screens appear, continue to press enter to accept the defaults.
2. Add the GitLab package repository and install the package
Add the GitLab package repository.
curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash
Next, install the GitLab package. Make sure you have correctly set up your DNS, and change
https://gitlab.example.com
to the URL at which you want to access your GitLab instance. Installation will automatically configure and start GitLab at that URL.For
https://
URLs, GitLab will automatically request a certificate with Let's Encrypt, which requires inbound HTTP access and a valid hostname. You can also use your own certificate or just usehttp://
(withouts
).If you would like to specify a custom password for the initial administrator user (
root
), check the documentation. If a password is not specified, a random password will be automatically generated.sudo EXTERNAL_URL="https://gitlab.example.com" yum install -y gitlab-ce
3. Browse to the hostname and login
Unless you provided a custom password during installation, a password will be randomly generated and stored for 24 hours in
/etc/gitlab/initial_root_password
. Use this password with usernameroot
to login.See our documentation for detailed instructions on installing and configuration.
4. Set up your communication preferences
Visit our email subscription preference center to let us know when to communicate with you. We have an explicit email opt-in policy so you have complete control over what and how often we send you emails.
Twice a month, we send out the GitLab news you need to know, including new features, integrations, docs, and behind the scenes stories from our dev teams. For critical security updates related to bugs and system performance, sign up for our dedicated security newsletter.
Important note: If you do not opt-in to the security newsletter, you will not receive security alerts.
5. Recommended next steps
After completing your installation, consider the recommended next steps, including authentication options and sign-up restrictions.
1. Install and configure the necessary dependencies
On CentOS 7 (and RedHat/Oracle/Scientific Linux 7), the commands below will also open HTTP, HTTPS and SSH access in the system firewall. This is an optional step, and you can skip it if you intend to access GitLab only from your local network.
sudo yum install -y curl policycoreutils-python openssh-server perl # Enable OpenSSH server daemon if not enabled: sudo systemctl status sshd sudo systemctl enable sshd sudo systemctl start sshd # Check if opening the firewall is needed with: sudo systemctl status firewalld sudo firewall-cmd --permanent --add-service=http sudo firewall-cmd --permanent --add-service=https sudo systemctl reload firewalld
Next, install Postfix to send notification emails. If you want to use another solution to send emails please skip this step and configure an external SMTP server after GitLab has been installed.
sudo yum install postfix sudo systemctl enable postfix sudo systemctl start postfix
During Postfix installation a configuration screen may appear. Select 'Internet Site' and press enter. Use your server's external DNS for 'mail name' and press enter. If additional screens appear, continue to press enter to accept the defaults.
2. Add the GitLab package repository and install the package
Add the GitLab package repository.
curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ee/script.rpm.sh | sudo bash
Next, install the GitLab package. Make sure you have correctly set up your DNS, and change
https://gitlab.example.com
to the URL at which you want to access your GitLab instance. Installation will automatically configure and start GitLab at that URL.For
https://
URLs, GitLab will automatically request a certificate with Let's Encrypt, which requires inbound HTTP access and a valid hostname. You can also use your own certificate or just usehttp://
(withouts
).If you would like to specify a custom password for the initial administrator user (
root
), check the documentation. If a password is not specified, a random password will be automatically generated.sudo EXTERNAL_URL="https://gitlab.example.com" yum install -y gitlab-ee
3. Browse to the hostname and login
Unless you provided a custom password during installation, a password will be randomly generated and stored for 24 hours in
/etc/gitlab/initial_root_password
. Use this password with usernameroot
to login.See our documentation for detailed instructions on installing and configuration.
4. Set up your communication preferences
Visit our email subscription preference center to let us know when to communicate with you. We have an explicit email opt-in policy so you have complete control over what and how often we send you emails.
Twice a month, we send out the GitLab news you need to know, including new features, integrations, docs, and behind the scenes stories from our dev teams. For critical security updates related to bugs and system performance, sign up for our dedicated security newsletter.
Important note: If you do not opt-in to the security newsletter, you will not receive security alerts.
5. Recommended next steps
After completing your installation, consider the recommended next steps, including authentication options and sign-up restrictions.
-
Close
For OpenSuse,
arm64
packages are also available.1. Install and configure the necessary dependencies
On OpenSUSE, the commands below will also open HTTP, HTTPS and SSH access in the system firewall. This is an optional step, and you can skip it if you intend to access GitLab only from your local network.
sudo zypper install curl openssh perl # Enable OpenSSH server daemon if not enabled: sudo systemctl status sshd sudo systemctl enable sshd sudo systemctl start sshd # Check if opening the firewall is needed with: sudo systemctl status firewalld sudo firewall-cmd --permanent --add-service=http sudo firewall-cmd --permanent --add-service=https sudo systemctl reload firewalld
Next, install Postfix to send notification emails. If you want to use another solution to send emails please skip this step and configure an external SMTP server after GitLab has been installed.
sudo zypper install postfix
During Postfix installation a configuration screen may appear. Select 'Internet Site' and press enter. Use your server's external DNS for 'mail name' and press enter. If additional screens appear, continue to press enter to accept the defaults.
2. Add the GitLab package repository and install the package
Add the GitLab package repository.
curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash
Next, install the GitLab package. Make sure you have correctly set up your DNS, and change
https://gitlab.example.com
to the URL at which you want to access your GitLab instance. Installation will automatically configure and start GitLab at that URL.For
https://
URLs, GitLab will automatically request a certificate with Let's Encrypt, which requires inbound HTTP access and a valid hostname. You can also use your own certificate or just usehttp://
(withouts
).If you would like to specify a custom password for the initial administrator user (
root
), check the documentation. If a password is not specified, a random password will be automatically generated.sudo EXTERNAL_URL="https://gitlab.example.com" zypper install gitlab-ce
3. Browse to the hostname and login
Unless you provided a custom password during installation, a password will be randomly generated and stored for 24 hours in
/etc/gitlab/initial_root_password
. Use this password with usernameroot
to login.See our documentation for detailed instructions on installing and configuration.
4. Set up your communication preferences
Visit our email subscription preference center to let us know when to communicate with you. We have an explicit email opt-in policy so you have complete control over what and how often we send you emails.
Twice a month, we send out the GitLab news you need to know, including new features, integrations, docs, and behind the scenes stories from our dev teams. For critical security updates related to bugs and system performance, sign up for our dedicated security newsletter.
Important note: If you do not opt-in to the security newsletter, you will not receive security alerts.
5. Recommended next steps
After completing your installation, consider the recommended next steps, including authentication options and sign-up restrictions.
For OpenSuse,
arm64
packages are also available.1. Install and configure the necessary dependencies
On OpenSUSE, the commands below will also open HTTP, HTTPS and SSH access in the system firewall. This is an optional step, and you can skip it if you intend to access GitLab only from your local network.
sudo zypper install curl openssh perl # Enable OpenSSH server daemon if not enabled: sudo systemctl status sshd sudo systemctl enable sshd sudo systemctl start sshd # Check if opening the firewall is needed with: sudo systemctl status firewalld sudo firewall-cmd --permanent --add-service=http sudo firewall-cmd --permanent --add-service=https sudo systemctl reload firewalld
Next, install Postfix to send notification emails. If you want to use another solution to send emails please skip this step and configure an external SMTP server after GitLab has been installed.
sudo zypper install postfix sudo systemctl enable postfix sudo systemctl start postfix
During Postfix installation a configuration screen may appear. Select 'Internet Site' and press enter. Use your server's external DNS for 'mail name' and press enter. If additional screens appear, continue to press enter to accept the defaults.
2. Add the GitLab package repository and install the package
Add the GitLab package repository.
curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ee/script.rpm.sh | sudo bash
Next, install the GitLab package. Make sure you have correctly set up your DNS, and change
https://gitlab.example.com
to the URL at which you want to access your GitLab instance. Installation will automatically configure and start GitLab at that URL.For
https://
URLs, GitLab will automatically request a certificate with Let's Encrypt, which requires inbound HTTP access and a valid hostname. You can also use your own certificate or just usehttp://
(withouts
).If you would like to specify a custom password for the initial administrator user (
root
), check the documentation. If a password is not specified, a random password will be automatically generated.sudo EXTERNAL_URL="https://gitlab.example.com" zypper install gitlab-ee
3. Browse to the hostname and login
Unless you provided a custom password during installation, a password will be randomly generated and stored for 24 hours in
/etc/gitlab/initial_root_password
. Use this password with usernameroot
to login.See our documentation for detailed instructions on installing and configuration.
4. Set up your communication preferences
Visit our email subscription preference center to let us know when to communicate with you. We have an explicit email opt-in policy so you have complete control over what and how often we send you emails.
Twice a month, we send out the GitLab news you need to know, including new features, integrations, docs, and behind the scenes stories from our dev teams. For critical security updates related to bugs and system performance, sign up for our dedicated security newsletter.
Important note: If you do not opt-in to the security newsletter, you will not receive security alerts.
5. Recommended next steps
After completing your installation, consider the recommended next steps, including authentication options and sign-up restrictions.
-
Close
Raspberry Pi 4 with at least 4GB is recommended. Only 32bit (
armhf
) is supported at this point. 64 bit (arm64
) is on its way.1. Install and configure the necessary dependencies
sudo apt-get install curl openssh-server ca-certificates apt-transport-https perl curl https://packages.gitlab.com/gpg.key | sudo tee /etc/apt/trusted.gpg.d/gitlab.asc
Next, install Postfix to send notification emails. If you want to use another solution to send emails please skip this step and configure an external SMTP server after GitLab has been installed.
sudo apt-get install -y postfix
During Postfix installation a configuration screen may appear. Select 'Internet Site' and press enter. Use your server's external DNS for 'mail name' and press enter. If additional screens appear, continue to press enter to accept the defaults.
2. Add the GitLab package repository and install the package
Add the GitLab package repository.
sudo curl -sS https://packages.gitlab.com/install/repositories/gitlab/raspberry-pi2/script.deb.sh | sudo bash
Next, install the GitLab package. Make sure you have correctly set up your DNS, and change
https://gitlab.example.com
to the URL at which you want to access your GitLab instance. Installation will automatically configure and start GitLab at that URL.For
https://
URLs, GitLab will automatically request a certificate with Let's Encrypt, which requires inbound HTTP access and a valid hostname. You can also use your own certificate or just usehttp://
(withouts
).If you would like to specify a custom password for the initial administrator user (
root
), check the documentation. If a password is not specified, a random password will be automatically generated.sudo EXTERNAL_URL="https://gitlab.example.com" apt-get install gitlab-ce
3. Browse to the hostname and login
Unless you provided a custom password during installation, a password will be randomly generated and stored for 24 hours in
/etc/gitlab/initial_root_password
. Use this password with usernameroot
to login.See our documentation for detailed instructions on installing and configuration.
4. Set up your communication preferences
Visit our email subscription preference center to let us know when to communicate with you. We have an explicit email opt-in policy so you have complete control over what and how often we send you emails.
Twice a month, we send out the GitLab news you need to know, including new features, integrations, docs, and behind the scenes stories from our dev teams. For critical security updates related to bugs and system performance, sign up for our dedicated security newsletter.
Important note: If you do not opt-in to the security newsletter, you will not receive security alerts.
5. Recommended next steps
After completing your installation, consider the recommended next steps, including authentication options and sign-up restrictions.
Ubuntu
18.04 LTS, 20.04 LTS
Debian
9, 10
CentOS 8
and RHEL, Oracle, Scientific
CentOS 7
and RHEL, Oracle, Scientific
OpenSUSE Leap 15.2
and SUSE Linux Enterprise Server 12.2, 12.5
Raspberry Pi OS
and Raspbian Buster
Supported cloud
Use the official Linux package to install GitLab in various cloud providers
Other official installation methods
Docker
Official GitLab Docker Images
Reference Architectures
Recommended GitLab deployment topologies
Installation from source
Install GitLab and all of its components from scratch. Use this method if none of the previous methods are available for your platform. Useful for unsupported systems like *BSD.
Install GitLab using the source files on a Debian/Ubuntu system
GitLab Environment Toolkit (GET)
The GitLab Environment toolkit provides a set of automation tools to deploy a reference architecture on most major cloud providers. Customers are very welcome to trial and evaluate GET today, however be aware of key limitations of the current iteration. For production environments further manual setup will be required based on your specific requirements.
Automation for deploying GitLab Reference Architectures using Terraform and Ansible
Helm install for Kubernetes
When installing GitLab on Kubernetes, there are some trade-offs that you need to be aware of:
- Administration and troubleshooting requires Kubernetes knowledge.
- It can be more expensive for smaller installations. The default installation requires more resources than a single node Linux package deployment, as most services are deployed in a redundant fashion.
- There are some feature limitations to be aware of.
Use this method if your infrastructure is built on Kubernetes and you’re familiar with how it works. The methods for management, observability, and some concepts are different than traditional deployments.
Unofficial, unsupported installation methods
Debian native package
by Pirate Praveen
FreeBSD package
by Torsten Zühlsdorff
Arch Linux package
by the Arch Linux community
Puppet module
by Vox Pupuli
Ansible playbook
by Jeff Geerling
GitLab virtual appliance (KVM)
by OpenNebula
GitLab on Cloudron
via Cloudron App Library