Difference between revisions of "Gitlab"
m |
|||
Line 17: | Line 17: | ||
Att konfigurera är väldigt enkelt. Man gör sina ändringar i <code>/etc/gitlab/gitlab.rb</code> efter det kör man <code>sudo gitlab-ctl reconfigure</code> för att dom ska börja gälla. | Att konfigurera är väldigt enkelt. Man gör sina ändringar i <code>/etc/gitlab/gitlab.rb</code> efter det kör man <code>sudo gitlab-ctl reconfigure</code> för att dom ska börja gälla. | ||
− | ==Gör LDAP användare till admin== | + | ==Enable HTTPS== |
− | För att göra | + | Ändra följande rad: |
+ | external_url "https://git.hackernet.se" | ||
+ | |||
+ | Eftersom hostnamnet är '''git.hackernet.se''' så kommer gitlab leta efter private key och certificate filen som heter '''git.hackernet.se.key/crt''' under <code>/etc/gitlab/ssl/</code>. | ||
+ | |||
+ | Om du behöver ändra vart cert filerna finns och vad dom heter ändra dessa 2 rader. | ||
+ | nginx['ssl_certificate'] = "/opt/cert/fullchain.pem" | ||
+ | nginx['ssl_certificate_key'] = "/opt/cert/privkey.pem" | ||
+ | |||
+ | ===Redirect HTTP till HTTPS=== | ||
+ | Ändra följande rad till true. | ||
+ | nginx['redirect_http_to_https'] = true | ||
+ | |||
+ | ==Enable LDAP authentication== | ||
+ | För mer info kolla [https://gitlab.com/gitlab-org/omnibus-gitlab/blob/master/doc/settings/ldap.md Gitlab LDAP document] | ||
+ | gitlab_rails['ldap_enabled'] = true | ||
+ | gitlab_rails['ldap_servers'] = YAML.load <<-'EOS' # remember to close this block with 'EOS' below | ||
+ | main: # 'main' is the GitLab 'provider ID' of this LDAP server | ||
+ | label: 'Hackernet' | ||
+ | host: 'openldap.hackernet.se' | ||
+ | port: 389 | ||
+ | uid: 'uid' | ||
+ | method: 'plain' | ||
+ | bind_dn: '>ldap bind username>' | ||
+ | password: '<ldap bind password>' | ||
+ | active_directory: false | ||
+ | allow_username_or_email_login: true | ||
+ | block_auto_created_users: false | ||
+ | base: '<base DN>' | ||
+ | user_filter: '' | ||
+ | attributes: | ||
+ | username: ['uid', 'userid', 'sAMAccountName'] | ||
+ | email: ['mail', 'email', 'userPrincipalName'] | ||
+ | name: 'cn' | ||
+ | first_name: 'givenName' | ||
+ | last_name: 'sn' | ||
+ | ## EE only | ||
+ | group_base: 'dc=hackernet,dc=se' | ||
+ | admin_group: 'cn=wiki' | ||
+ | sync_ssh_keys: false | ||
+ | EOS | ||
+ | ===Gör LDAP användare till admin=== | ||
+ | För att göra en LDAP användare till admin kör följande kommando i shell: | ||
sudo gitlab-rails console | sudo gitlab-rails console | ||
u = User.find_by_username("LDAPadmin") | u = User.find_by_username("LDAPadmin") |
Revision as of 15:49, 24 April 2016
Gitlab är ett webbaserad git repositry manager med bland annat en inbyggd wiki. Gitlab fungerar som Github gör och dom erbjuder att så man kan hosta sin egna lösning på sin egen server. Det finns 2 version av Gitlab:
- Gitlab CE: Community Edition.
- Gitlab EE: Enterprise Edition.
Contents
Installation
Installera dom nödvändiga paketen. Postfix kan man skippa om man har en annan mailserver.
sudo apt-get install curl openssh-server ca-certificates postfix
Lägg till Gitlab's repo och installera sedan Gitlab CE.
curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash sudo apt-get install gitlab-ce
Konfigurera sedan Gitlab och starta det.
sudo gitlab-ctl reconfigure
Konfiguration
Att konfigurera är väldigt enkelt. Man gör sina ändringar i /etc/gitlab/gitlab.rb
efter det kör man sudo gitlab-ctl reconfigure
för att dom ska börja gälla.
Enable HTTPS
Ändra följande rad:
external_url "https://git.hackernet.se"
Eftersom hostnamnet är git.hackernet.se så kommer gitlab leta efter private key och certificate filen som heter git.hackernet.se.key/crt under /etc/gitlab/ssl/
.
Om du behöver ändra vart cert filerna finns och vad dom heter ändra dessa 2 rader.
nginx['ssl_certificate'] = "/opt/cert/fullchain.pem" nginx['ssl_certificate_key'] = "/opt/cert/privkey.pem"
Redirect HTTP till HTTPS
Ändra följande rad till true.
nginx['redirect_http_to_https'] = true
Enable LDAP authentication
För mer info kolla Gitlab LDAP document
gitlab_rails['ldap_enabled'] = true gitlab_rails['ldap_servers'] = YAML.load <<-'EOS' # remember to close this block with 'EOS' below main: # 'main' is the GitLab 'provider ID' of this LDAP server label: 'Hackernet' host: 'openldap.hackernet.se' port: 389 uid: 'uid' method: 'plain' bind_dn: '>ldap bind username>' password: '<ldap bind password>' active_directory: false allow_username_or_email_login: true block_auto_created_users: false base: '<base DN>' user_filter: attributes: username: ['uid', 'userid', 'sAMAccountName'] email: ['mail', 'email', 'userPrincipalName'] name: 'cn' first_name: 'givenName' last_name: 'sn' ## EE only group_base: 'dc=hackernet,dc=se' admin_group: 'cn=wiki' sync_ssh_keys: false EOS
Gör LDAP användare till admin
För att göra en LDAP användare till admin kör följande kommando i shell:
sudo gitlab-rails console u = User.find_by_username("LDAPadmin") u.admin = true u.save exit