

一,安装gitlab
# 安装rpm包 (清华大学源获取)
[root@\ gitlab~]# wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-13.0.3-ce.0.el7.x86_64.rpm
# 安装依赖包(官网获取)
[root@\ gitlab~]# yum -y install policycoreutils openssh-server openssh-clients postfix
#安装gitlab
[root@\ gitlab~]# yum install gitlab-ce-13.0.3-ce.0.el7.x86_64.rpm
# 修改gitlab配置
[root@\ gitlab~]# vim /etc/gitlab/gitlab.rb
external_url 'http://192.168.12.82'
nginx['listen_port'] = 80
# 刷新配置,需要几分钟时间(默认启动)
[root@\ gitlab~]# gitlab-ctl reconfigure
# 启动
[root@\ gitlab~]# gitlab-ctl start


二,用户组,用户及项目
1,创建组


2,创建用户



3,创建项目


4,添加组员到组内

1. Guest:可以创建issue、发表评论,不能读写版本库
2. Reporter:可以克隆代码,不能提交,QA、PM 可以赋予这个权限
3. Developer:可以克隆代码、开发、提交、push,普通开发可以赋予这个权限
4. Maintainer:可以创建项目、添加tag、保护分支、添加项目成员、编辑项目,核心开发可以赋予这个 权限
5. Owner:可以设置项目访问权限 - Visibility Level、删除项目、迁移项目、管理组成员,开发组组 长可以赋予这个权限

5,修改组内成员权限


补充





6,测试拉取
方式一:
[root@\ gitlab/opt]# git clone http://192.168.15.60/techonology-department/super-ai.git
Cloning into 'super-ai'...
Username for 'http://192.168.15.60': root
Password for 'http://root@192.168.15.60':
remote: Enumerating objects: 3, done.
remote: Counting objects: 100% (3/3), done.
remote: Total 3 (delta 0), reused 0 (delta 0), pack-reused 0
Unpacking objects: 100% (3/3), done.
[root@\ gitlab/opt]# ll
total 1198460
drwxr-xr-x. 10 root root 212 Apr 14 10:27 gitlab
-rw-r--r--. 1 root root 727095936 May 29 2020 gitlab-ce-13.0.3-ce.0.el7.x86_64.rpm
-rw-r--r--. 1 root root 500123693 Apr 14 10:22 plugins.tar.gz
drwxr-xr-x. 3 root root 35 Apr 14 11:47 super-ai
[root@\ gitlab/opt]# cd super-ai/
[root@\ gitlab/opt/super-ai]# ll
total 4
-rw-r--r--. 1 root root 12 Apr 14 11:47 README.md

方式二:
[root@\ gitlab/opt]# ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Created directory '/root/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:b1jkG/10owOsuz2oXItvsn/II/ey4ji6QB80ekJjMRk root@gitlab
The key's randomart image is:
+---[RSA 2048]----+
| Eo |
| .o |
| + o . |
|o + . o.. |
| + o S +o. ...|
|. + . +.o.o...|
| . . oo* o. |
| . .o+oX+o . |
| oo.o*@BBo. |
+----[SHA256]-----+
[root@\ gitlab/opt]# cat /root/.ssh/id_rsa.pub


7,上传代码更新查看
[root@\ gitlab/opt/super-ai]# echo 333 > a.txt
[root@\ gitlab/opt/super-ai]# git add a.txt
[root@\ gitlab/opt/super-ai]# git commit -m 'init'
*** Please tell me who you are.
Run
git config --global user.email "you@example.com"
git config --global user.name "Your Name"
to set your account's default identity.
Omit --global to set the identity only in this repository.
fatal: unable to auto-detect email address (got 'root@gitlab.(none)')
[root@\ gitlab/opt/super-ai]# git config --global user.email "you@example.com"
[root@\ gitlab/opt/super-ai]# git config --global user.name "Your Name"
[root@\ gitlab/opt/super-ai]# git commit -m 'init'
[master 79654bc] init
1 file changed, 1 insertion(+)
create mode 100644 a.txt
[root@\ gitlab/opt/super-ai]# git push -u origin master
Username for 'http://192.168.15.60': root
Password for 'http://root@192.168.15.60':
Counting objects: 4, done.
Compressing objects: 100% (2/2), done.
Writing objects: 100% (3/3), 269 bytes | 0 bytes/s, done.
Total 3 (delta 0), reused 0 (delta 0)
To http://192.168.15.60/techonology-department/super-ai.git
50bd5b1..79654bc master -> master
Branch master set up to track remote branch master from origin.
image.png](https://img.haomeiwen.com/i23958203/54d26dc0c6a2292a.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
三,jenkins
jenkins 是一个自动化部署的工具;依赖于jave开发的
1, 安装jenkins
方式一:
# 安装java
[root@\ jenkins/opt]# yum install java-1.8.0-openjdk* -y
# 下载镜像源
wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo
# 安装认证Key
[root@\ jenkins/opt]# rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key
# 安装jenkins
[root@\ jenkins/opt]# yum install jenkins -y
# 启动服务
[root@\ jenkins/opt]# systemctl start jenkins
方式二:(建议,方式一可能会出现离线状态)
# 第二种方式
wget https://mirrors.tuna.tsinghua.edu.cn/jenkins/redhat-stable/jenkins-2.249.1-1.1.noarch.rpm
rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key
yum install jenkins-2.249.1-1.1.noarch.rpm
# 启动
systemctl start jenkins
2,访问页面

# 查看管理员密码
[root@\ jenkins/opt]# cat /var/lib/jenkins/secrets/initialAdminPassword
9cbf77f8aa8e45cda3293696c9817841
3,插件安装
https://plugins.jenkins.io/可去官网找需要的,这里有直接下载好的插件包
[root@\ jenkins/var/lib/jenkins]# rm -rf plugins/
[root@\ jenkins/var/lib/jenkins]# tar -xf /opt/plugins.tar.gz -C /var/lib/jenkins/
[root@\ jenkins/var/lib/jenkins]# systemctl restart jenkins.service
这里注意plugins权限是jenkins jenkins
[root@\ jenkins/var/lib/jenkins]# ll
... ....
drwxr-xr-x. 136 jenkins jenkins 12288 Sep 18 2020 plugins
-rw-r--r--. 1 jenkins jenkins 129 Apr 14 13:57 queue.xml.bak
-rw-r--r--. 1 jenkins jenkins 64 Apr 14 12:35 secret.key
-rw-r--r--. 1 jenkins jenkins 0 Apr 14 12:35 secret.key.not-so-secret
drwx------. 4 jenkins jenkins 4096 Apr 14 15:40 secrets
drwxr-xr-x. 2 jenkins jenkins 100 Apr 14 13:58 updates
drwxr-xr-x. 2 jenkins jenkins 24 Apr 14 12:35 userContent
drwxr-xr-x. 3 jenkins jenkins 56 Apr 14 13:10 users
drwxr-xr-x. 2 jenkins jenkins 6 Apr 14 13:58 workflow-libs
重启刷新会出现中文页面

4,优化
# 切换至配置文件目录
[root@\ jenkins~]# cd /var/lib/jenkins/updates/
# 换源
[root@\ jenkins/var/lib/jenkins/updates]# sed -i 's/http:\/\/www.google.com/https:\/\/www.baidu.com/g' default.json
[root@\ jenkins/var/lib/jenkins/updates]# sed -i 's/http:\/\/updates.jenkinsci.org\/download/https:\/\/mirrors.tuna.tsinghua.edu.cn\/jenkins/g' default.json
# 最后,系统管理 --> 插件管理 --> 高级,把站点升级改为国内插件下载地址
https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json
# 重启jenkins
[root@\ jenkins/var/lib/jenkins/updates]# systemctl restart jenkins

补充:如果jenkins的用户admin用户密码忘记
[root@\ jenkins~]# cd /var/lib/jenkins/
[root@\ jenkins/var/lib/jenkins]# cd users
[root@\ jenkins/var/lib/jenkins/users]# ll
drwx------. 2 jenkins jenkins 24 Apr 14 13:13 admin_5379678129911687170
-rw-r--r--. 1 jenkins jenkins 300 Apr 14 12:35 users.xml
[root@\ jenkins/var/lib/jenkins/users]# cd admin_5379678129911687170/
[root@\ jenkins/var/lib/jenkins/users/admin_5379678129911687170]# ll
-rw-r--r--. 1 jenkins jenkins 1865 Apr 14 13:13 config.xml
[root@\ jenkins/var/lib/jenkins/users/admin_5379678129911687170]# vim config.xml
...
<passwordHash>#jbcrypt:$2a$10$3CnyyvDVY93GAvKDH4YItOfja339nmLSmvBpohxoAO50MJXAG/.3C</passwordHash>
...
这里的密码可百度一个放进去,再重启即可
网友评论