Is the system packaged Git too old, or not compiled with pcre2? Remove it and compile from source: # Remove packaged Git sudo apt-get remove git-core # Install dependencies sudo apt-get install -y libcurl4-openssl-dev libexpat1-dev gettext libz-dev libssl-dev build-essential # Download and compile pcre2 from source curl -silent -show-error -location -output tar -xzf cd pcre2-10.33 chmod +x configure. Starting with GitLab 12.0, Git is required to be compiled with libpcre2.įind out if that's the case: ldd /usr/local/bin/git | grep pcre2 Make sure you have the right version of Git installed: # Install Git sudo apt-get install -y git-core # Make sure Git is version 2.24.1 or higher (minimal supported version is 2.22.0) git -version If you don't know what Kerberos is, you can assume you don't need it. If you want to use Kerberos for user authentication, install libkrb5-dev: sudo apt-get install libkrb5-dev Ubuntu 14.04 (Trusty Tahr) doesn't have the libre2-dev package available, but Install the required packages (needed to compile Ruby and native extensions to Ruby gems): sudo apt-get install -y build-essential zlib1g-dev libyaml-dev libssl-dev libgdbm-dev libre2-dev \ libreadline-dev libncurses5-dev libffi-dev curl openssh-server checkinstall libxml2-dev \ libxslt-dev libcurl4-openssl-dev libicu-dev logrotate rsync python-docutils pkg-config cmake \ runit # Install vim and set as default editor sudo apt-get install -y vim sudo update-alternatives -set editor /usr/bin/vim.basic If you are not familiar with vim, skip this and keep using the default editor. If you are familiar with vim, set it as default editor with the commands below.
#How to install gitlab on our own server update#
# run as root! apt-get update -y apt-get upgrade -y apt-get install sudo -yĭuring this installation, some files will need to be edited manually. Sudo is not installed on Debian by default. The GitLab installation consists of setting up the following components: Of GitLab and config.yml of GitLab Shell.įor a more in-depth overview, see the GitLab architecture doc. The default locations for repositories can be configured in config/gitlab.yml This area contains critical data for projects.
This is where the Git repositories which are pushed/pulled are
ssh | |- gitlab | |- gitlab-shell | |- repositories This is the main directory structure you will end up with following the instructions If the highest number stable branch is unclear, check the GitLab blog for installation guide links by version. You can select the branch in the version dropdown in the top left corner of GitLab (below the menu bar). Make sure you view this installation guide from the branch (version) of GitLab you would like to install (e.g., 11-7-stable). Since installations from source don't use runit for process supervision, SidekiqĬan't be terminated and its memory usage will grow over time. Omnibus packages solve this by letting the Sidekiq terminate gracefully if it uses too much memory.Īfter this termination runit will detect Sidekiq is not running and will start it. On heavily used GitLab instances the memory usage of the Sidekiq background worker will grow over time. One reason the Omnibus package is more reliable is its use of runit to restart any of the GitLab processes in case one crashes. Since an installation from source is a lot of work and error prone we strongly recommend the fast and reliable Omnibus package installation (deb/rpm). Consider the Omnibus package installation If you find a bug/error in this guide, submit a merge requestĬontributing guide.
They changed the location of directories or run services as the wrong user. For example, many people run into permission problems because Make sure you don't violate any assumptions GitLab makes about Use caution when you deviateįrom this guide. The following steps have been known to work. Need, this is one of the few installation scripts that actually work out of the box. This guide is long because it covers many cases and includes all commands you If you want to install on RHEL/CentOS, we recommend using the Read requirements.md for hardware and operating system requirements. It was created for and tested on Debian/Ubuntu operating systems. Other installation options, see the main installation page. To set up a development installation or for many This is the official installation guide to set up a production GitLab server