GitlabのLDAP連携
はじめに
sameersbn/docker-gitlabでLDAP連携するメモ
環境
- Docker-compose version 1.11.2, build dfed245
- Docker version 17.03.1-ce, build c6d412e
- sameersbn/docker-gitlab 8.17.4
設定
レポジトリにあるdocker-compose.xmlを参考に記述する
※余談ですがバックアップがdailyになっててテスト環境でテストしてたら死にました
設定値例
- LDAPホスト:192.168.1.30
- LDAPポート:389
- 認証ユーザーグループ:dc=hoge,dc=fuga,dc=foo,dc=co,dc=jp
- ユーザー名:uid
必要部分だけ抜粋
1~略~
2 gitlab:
3 restart: always
4 image: sameersbn/gitlab:8.17.4
5 ~中略~
6 environment:
7 - DEBUG=false
8 ~中略~
9 - LDAP_ENABLED=true
10 - LDAP_LABEL=えるだっぷ
11 - LDAP_HOST=192.168.1.30
12 - LDAP_PORT=389
13 - LDAP_BASE=dc=hoge,dc=fuga,dc=foo,dc=co,dc=jp
14 - LDAP_UID=uid
LDAP_LABELはトップページのログイン方式選択のラベルで表示される
LDAP_BASEは””とかで囲む必要はない これでハマったので今回の記事書いたところもある
LDAP_UIDはLDAP側ユーザー名として設定してるものに合わせる
確認
コンテナを起動して確かめる
1$ cd gitlab
2$ docker-compose up -d
このように表示されてればとりあえずおっけー
あとはログインしてみて正しくログイン出来れば終わり
設定値の確認
ダメそうだったらコンテナの中に入って確認してみる
1$ docker exec -it gitlab bash
2# vi config/gitlab.yml
とかしてldapで検索すると設定値が確認出来るのでミスがないか確認する
ここで””つけてるのが反映されてるのを見つけて解決した
おまけ
通常のユーザー登録を行えないようにする
今回はLDAPユーザー向けの提供なのでユーザー登録は禁止にします
臨時でアカウント等が要る場合は管理者から通常アカウントを作成すれば良いです(その場合はログイン時にStandardのタブに切り替えてログインします)
管理者アカウントでログイン → Settings → Sign-up Restrictionsと移動しSign-up enabled のチェックを外してセーブして終わりです
URLは/admin/application_settingsです
Overviewの画面でSign upが無効になってることを確認します