gitlab 使用配置
阿新 • • 發佈:2018-06-22
選項 ase tar CA ssh key 開發 克隆 編輯 ner
1. 源主機:
ssh-keygen -t rsa -C "[email protected]"
生成 id_rsa,id_rsa.pub
2. 拷貝內容id_rsa.pub 內容到 gitlab ==> 用戶==> Settings ==> SSH Keys 進行設置
## 主機上clone 代碼操作設置
3. 如果 id_rsa,id_rsa.pub 文件不是標準的文件
需要在源主機新建config 文件
[root@sa01 .ssh]# cat config
# gitlab
Host gitlab.opsinfo.cn
HostName gitlab.opsinfo.cn
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa_git
## ci/cd (jenkins) 上設置認證
4. 登陸jenkins,添加認證 ==> Credentials ==>
Add Credentials ==> 選擇 SSH Username with private key ==> Private Key(選擇 Enter directly)
==> 復制id_rsa 中的內容
##################################################
3 gitlab 支持 ldap 配置
文件 /etc/gitlab/gitlab.rb
gitlab_rails['ldap_enabled'] = true
gitlab_rails['ldap_servers'] = YAML.load <<-'EOS'
main: # 'main' is the GitLab 'provider ID' of this LDAP server
label: 'Ldap Auth'
host: '127.0.0.1'
port: 389
uid: 'uid'
bind_dn: 'cd=admin,dc=opsinfo,dc=cn'
password: '123456'
encryption: 'plain' # "start_tls" or "simple_tls" or "plain"
verify_certificates: true
active_directory: true
allow_username_or_email_login: false
lowercase_usernames: false
block_auto_created_users: false
base: 'dc=opsinfo,dc=cn'
user_filter: ''
## EE only
group_base: 'ou=Groups,dc=opsinfo,dc=cn'
admin_group: ''
sync_ssh_keys: false
EOS
#########################################
2 Gitlab操作手冊
2.1 Gitlab權限管理
Gitlab用戶在組中有五種權限:Guest、Reporter、Developer、Master、Owner
Guest:可以創建issue、發表評論,不能讀寫版本庫
Reporter:可以克隆代碼,不能提交,QA、PM可以賦予這個權限
Developer:可以克隆代碼、開發、提交、push,RD可以賦予這個權限
Master:可以創建項目、添加tag、保護分支、添加項目成員、編輯項目,核心RD負責人可以賦予這個權限
Owner:可以設置項目訪問權限 - Visibility Level、刪除項目、遷移項目、管理組成員,開發組leader可以賦予這個權限
Gitlab中的組和項目有三種訪問權限:Private、Internal、Public
Private:只有組成員才能看到
Internal:只要登錄的用戶就能看到
Public:所有人都能看到
開源項目和組設置的是Internal
##################################################
1. gitlab 關閉賬號註冊
root用戶登陸
Admin Area ==> settings ==> Sign-up restrictions ==> Sign-up enabled 選項關閉選擇
##################################################
2. gitlab ssh key 連接設置,及ci/cd (jenkins 配置clone 代碼)
1. 源主機:
ssh-keygen -t rsa -C "[email protected]"
生成 id_rsa,id_rsa.pub
2. 拷貝內容id_rsa.pub 內容到 gitlab ==> 用戶==> Settings ==> SSH Keys 進行設置
## 主機上clone 代碼操作設置
3. 如果 id_rsa,id_rsa.pub 文件不是標準的文件
需要在源主機新建config 文件
[root@sa01 .ssh]# cat config
# gitlab
Host gitlab.opsinfo.cn
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa_git
## ci/cd (jenkins) 上設置認證
4. 登陸jenkins,添加認證 ==> Credentials ==>
Add Credentials ==> 選擇 SSH Username with private key ==> Private Key(選擇 Enter directly)
##################################################
3 gitlab 支持 ldap 配置
文件 /etc/gitlab/gitlab.rb
gitlab_rails['ldap_enabled'] = true
gitlab_rails['ldap_servers'] = YAML.load <<-'EOS'
main: # 'main' is the GitLab 'provider ID' of this LDAP server
label: 'Ldap Auth'
host: '127.0.0.1'
port: 389
uid: 'uid'
bind_dn: 'cd=admin,dc=opsinfo,dc=cn'
password: '123456'
encryption: 'plain' # "start_tls" or "simple_tls" or "plain"
verify_certificates: true
active_directory: true
allow_username_or_email_login: false
lowercase_usernames: false
block_auto_created_users: false
base: 'dc=opsinfo,dc=cn'
user_filter: ''
## EE only
group_base: 'ou=Groups,dc=opsinfo,dc=cn'
admin_group: ''
sync_ssh_keys: false
EOS
#########################################
2 Gitlab操作手冊
2.1 Gitlab權限管理
Gitlab用戶在組中有五種權限:Guest、Reporter、Developer、Master、Owner
Guest:可以創建issue、發表評論,不能讀寫版本庫
Reporter:可以克隆代碼,不能提交,QA、PM可以賦予這個權限
Developer:可以克隆代碼、開發、提交、push,RD可以賦予這個權限
Master:可以創建項目、添加tag、保護分支、添加項目成員、編輯項目,核心RD負責人可以賦予這個權限
Owner:可以設置項目訪問權限 - Visibility Level、刪除項目、遷移項目、管理組成員,開發組leader可以賦予這個權限
Gitlab中的組和項目有三種訪問權限:Private、Internal、Public
Private:只有組成員才能看到
Internal:只要登錄的用戶就能看到
Public:所有人都能看到
開源項目和組設置的是Internal
gitlab 使用配置