9.9 KiB
9.9 KiB
comments |
---|
false |
Omnibus GitLab Docs
Omnibus GitLab is a way to package different services and tools required to run GitLab, so that most users can install it without laborious configuration.
Package information
- Checking the versions of bundled software
- Package defaults
- Components included
- Deprecated Operating Systems
- Signed Packages
- Deprecation Policy
- Licenses of bundled dependencies
Installation
Prerequisites
- Installation Requirements
- If you want to access your GitLab instance via a domain name, like mygitlabinstance.com, make sure the domain correctly points to the IP of the server where GitLab is being installed. You can check this using the command
host mygitlabinstance.com
- If you want to use HTTPS on your GitLab instance, make sure you have the SSL certificates for the domain ready. (Note that certain components like Container Registry which can have their own subdomains requires certificates for those subdomains also)
- If you want to send notification emails, install and configure a mail server (MTA) like sendmail. Alternatively, you can use other third party SMTP servers, which is described below.
Installation and Configuration using omnibus package
NOTE: Note: This section describes the commonly used configuration settings. Check configuration section of the documentation for complete configuration settings.
- Installing GitLab
- Setting up a domain name/URL for the GitLab Instance so that it can be accessed easily
- Enabling HTTPS
- Enabling notification emails
- Enabling replying via email
- Enabling container registry on GitLab
- You will require SSL certificates for the domain used for container registry
- Enabling GitLab Pages
- If you want HTTPS enabled, you will have to get wildcard certificates
- Enabling Elasticsearch
- GitLab Mattermost Set up the Mattermost messaging app that ships with Omnibus GitLab package.
- GitLab Prometheus Set up the Prometheus monitoring included in the Omnibus GitLab package.
- GitLab High Availability Roles
Using docker image
You can also use the docker images provided by GitLab to install and configure a GitLab instance. Check the documentation to know more.
Running on a low-resource device (like a Raspberry Pi)
You can run GitLab on supported low-resource computers like the Raspberry Pi 3, but you will need to tune the settings to work best with the available resources. Check out the documentation for suggestions on what to adjust.
Maintenance
- Get service status
- Starting and stopping
- Invoking Rake tasks
- Starting a Rails console session
- Starting a Postgres superuser psql session
- Container registry garbage collection
Configuring
- Configuring the external url
- Configuring a relative URL for GitLab (experimental)
- Storing Git data in an alternative directory
- Changing the name of the Git user group
- Specify numeric user and group identifiers
- Only start Omnibus GitLab services after a given filesystem is mounted
- Disable user and group account management
- Disable storage directory management
- Configuring Rack attack
- SMTP
- NGINX
- LDAP
- Unicorn
- Redis
- Logs
- Database
- Reply by email
- Environment variables
gitlab.yml
- Backups
- Pages
- SSL
- GitLab and Registry
- Configuring an asset proxy server
Updating
- Upgrade support policy
- Upgrade from Community Edition to Enterprise Edition
- Updating to the latest version
- Downgrading to an earlier version
- Upgrading from a non-Omnibus installation to an Omnibus installation using a backup
- Upgrading from non-Omnibus PostgreSQL to an Omnibus installation in-place
- Upgrading from non-Omnibus MySQL to an Omnibus installation (version 6.8+)
- Updating from GitLab 6.6 and higher to 7.10 or newer
- Updating from GitLab 6.6.0.pre1 to 6.6.4
- Updating from GitLab CI version prior to 5.4.0 to the latest version
Troubleshooting
- Hash Sum mismatch when downloading packages
- Apt error:
The requested URL returned error: 403
. - GitLab is unreachable in my browser.
- Emails are not being delivered.
- Reconfigure freezes at ruby_block[supervise_redis_sleep] action run.
- TCP ports for GitLab services are already taken.
- Git SSH access stops working on SELinux-enabled systems.
- Postgres error
FATAL: could not create shared memory segment: Cannot allocate memory
. - Reconfigure complains about the GLIBC version.
- Reconfigure fails to create the Git user.
- Failed to modify kernel parameters with sysctl.
- I am unable to install Omnibus GitLab without root access.
gitlab-rake assets:precompile
fails withPermission denied
.Short read or OOM loading DB
error.pg_dump: aborting because of server version mismatch
Errno::ENOMEM: Cannot allocate memory
during backup or upgrade- NGINX error:
could not build server_names_hash
- Reconfigure fails due to
'root' cannot chown
with NFS root_squash
Omnibus GitLab developer documentation
See the development documentation