본문 바로가기
OpenSource/Gitlab

Gitlab Docker install + Ldap 연동

by 푸푸망나뇽 2021. 4. 1.
반응형

Gitlab CE

Gitlab community Edition으로 EE(enterprise Edition)보다 제공되는 기능은 제한적이나 무료로 로컬에 설치하여 프라이빗하게 사용할수있다.

로컬에 도커로 설치해보도록 하겠다.

 

Gitlab Docker install

공식문서를 참고하면 상세하게 설명되어있다.

Docs: docs.gitlab.com/omnibus/docker/

sudo docker run -d -p 포트번호:80 -p 443:443 -p 23:23 --name gitlab/gitlab-ce:latest

gitlab을 배포할 포트번호를 적어서 배포하면 된다. 

http://localhost:포트번호 로 접속가능하다.

 

 

Gitlab + Ldap 연동

Gitlab 로그인 인증에 Ldap과 연동이 가능하다.

/etc/gitlab/gitlab.rb 파일에서 아래와 같이 작성해준다.

 

gitlab.rb 파일은

sudo docker exec -it gitlab /bin/bash

로 도커 컨테이너에 접속하여 etc/gitlab으로 이동후 gitlab.rb 파일을 수정가능하다.

 

초기 gitalb.rb파일은 내용이 모두 주석처리되어있으니 파일 가장 아래에 추가해주면 된다.

gitlab_rails['ldap_enabled'] = true
# gitlab_rails['prevent_ldap_sign_in'] = false
 
###! **remember to close
this block with 'EOS' below**
gitlab_rails['ldap_servers'] = YAML.load <<-'EOS'
   main: # 'main' is the GitLab 'provider ID' of this LDAP server
     label: 'LDAP'
     host: 'ldap ip기재'
     port: 389
     uid: 'uid'
     bind_dn: 'cn=~~,dc=~~' # 기재
     password: '~~' # 기재
     encryption: 'plain'
     verify_certificates: false
     smartcard_auth: false
     active_directory: false
     allow_username_or_email_login: true
     lowercase_usernames: true
     block_auto_created_users: false
     base: 'ou=~~,,dc=~~' # 필요시 기재
     user_filter: '(objectClass=inetOrgPerson)' # 필요시 기재
EOS

 

수정 후 컨테이너 쉘상에서 reconfigure해주거나

gitlab-ctl reconfigure

쉘 종료 후 컨테이너를 재시작해주면 된다.

sudo docker restart gitlab
반응형

'OpenSource > Gitlab' 카테고리의 다른 글

Gitlab 설정 - gitlab.rb (External url)  (0) 2021.04.01

댓글