您好,登錄后才能下訂單哦!
gitlab頁面可以添加用戶,但是無法批量添加。可以使用api的方式批量添加用戶:
1、創建token
在User Setting--Access Tokens中添加token:
復制創建好的token
2、配置腳本及用戶信息文件
# vim userinfo.txt
name username password user_email
例如:
zhangshan zhangshan zhangshan123 zhangshan@demo.com
# vim user_add.sh
#!/bin/bash
userinfo="userinfo.txt"
while read line
do
name=`echo $line|awk '{print $1}'`
username=`echo $line|awk '{print $2}'`
userpass=`echo $line|awk '{print $3}'`
mail=`echo $line|awk '{print $4}'`
curl -d "can_create_group=false&password=$userpass&email=$mail&username=$username&name=$name&private_token=qxxgPTxxxe1qH8J1" "http://gitlab.xxx.com/api/v4/users"
done<$userinfo
chmod +x user_add.sh
3、運行腳本
sh user_add.sh
4、查看gitlab,用戶已創建,但是需要郵件confirm
5、配置gitlab郵件
由于gitlab的容器鏡像未安裝sendmail,所以需要安裝后才能發送郵件
Dockerfile如下:
FROM gitlab/gitalab-ce
RUN apt-get update & apt-get install postfix
需要修改gitlab配置:
#vim /etc/gitlab/gitlab.rb
#騰訊企業郵箱
gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.exmail.qq.com"
gitlab_rails['smtp_port'] = 465
gitlab_rails['smtp_user_name'] = "monitor_robot@xxx.com"
gitlab_rails['smtp_password'] = "xxxxxx"
gitlab_rails['smtp_authentication'] = "login"
gitlab_rails['smtp_enable_starttls_auto'] = true
gitlab_rails['smtp_tls'] = false
gitlab_rails['gitlab_email_from'] = 'monitor_robot@xxxx.com'
gitlab_rails['smtp_domain'] = 'exmail.qq.com'
6、測試發送郵件
gitlab-rails console
Notify.test_email('xxxx@xxx.com','標題,'正文').deliver_now
這里出現報錯:
postdrop: warning: mail_queue_enter: create file maildrop/xxxx.xxxx: Permission denied
postdrop: warning: mail_queue_enter: create file maildrop/yyyy.yyyy: Permission denied
解決方法:
# chown postfix.postdrop /var/spool/postfix/public -R
# chown postfix.postdrop /var/spool/postfix/maildrop -R
# chmod 777 -R /var/spool/postfix
郵箱配置能成功發送郵件后,新建用戶,用戶收到的郵箱打開gitlab服務器域名是容器主機名稱,需做修改
vim /var/opt/gitlab/gitlab-rails/etc/gitlab.yml
host: xxxx
port: 80
https: false
重啟
gitlab-ctl reconfigure
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。