gitlab使用isulad部署,以及导入导出

〇、使用isulad代替docker部署gitlab

cni安装参考

#在执行前需提前配置cni插件
isula run \
 -d  \
 -p 80:80 \
 -p 22:22 \
 -v /root/gitlab/etc:/etc/gitlab  \
 -v /root/gitlab/log:/var/log/gitlab \
 -v /root/gitlab/opt:/var/opt/gitlab \
 --net cni0 \
 --ip 192.168.0.2 \
 --restart always \
 --privileged=true \
 --name gitlab \
 gitlab/gitlab-ce


#查看密码
isula exec -it gitlab grep 'Password:' /etc/gitlab/initial_root_password

isula exec -it gitlab
vi /etc/gitlab/gitlab.rb

#直接在gitlab.rb文件头部进行添加
external_url 'http://10.20.172.241' #外部访链接
#ssh主机ip
gitlab_rails['gitlab_ssh_host'] = '10.20.172.241'

#修改后记得重启

一、导入账号信息

操作步骤

1、使用有admin权限的账号登录gitlab
2、点击右上角头像,点击偏好设置
3、如图所示添加访问令牌
image.png
image.png
4、准备脚本
创建userinfo.txt

123321qqq test1@test.com test1 张三  
123321qqq test2@test.com test2 李四  
123321qqq test3@test.com test3 王五  
123321qqq test4@test.com test4 吕六

对应字段为:密码 邮箱 用户名 别名,字段可按需调整

创建脚本adduser.sh

#!/bin/bash  

# 用户信息文件  
userinfo="userinfo.txt"  
# 读取文件  
while read -r line  
do  
    # 去除行首尾空格  
    l=`echo $line | awk '{gsub(/^\s+|\s+$/, "");print}'`  
    echo $l  
    # 按照空格分隔  字段顺序按需调整,但需与userinfo.txt文件一致  
    password=`echo $l | awk '{print $1}'`  
    email=`echo $l | awk '{print $2}'`  
    username=`echo $l | awk '{print $3}'`  
    name=`echo $l | awk '{print $4}'`  
    # 发送post请求 token与url需更换为自己的  
    curl --cacert /root/Root-CA.crt -X POST -H "PRIVATE-TOKEN: glpat-Z9pE5UqwsYLaPipx3Jsy" "https://git.com.cn/api/v4/users" -H 'cache-control: no-cache' -H 'content-type: application/json' \  
    -d '{ "email": "'"$email"'", "username": "'"$username"'", "password": "'"$password"'", "name": "'"$name"'", "skip_confirmation": "true" }'  
    echo ""  
done < $userinfo

其中token和api地址自行替换
--cacert /root/Root-CA.crt由于源站采用自签证书,因此需要加上该参数
给adduser.sh添加可执行权限并执行

chmod +x adduser.sh
bash adduser.sh

image.png
至此批量导入用户已完成

二、导出gitlab用户信息

isula exec -it gitlab bash
su - gitlab-psql

echo 'select name,username,email,state from users;' |psql -h /var/opt/gitlab/postgresql -d gitlabhq_production > userinfo.txt

用户信息在userinfo.txt里

© 版权声明
THE END
喜欢就支持一下吧
点赞15 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容