gitlab简介配置和参数修改
⼀、Gitlab基本简介
GitLab 是⼀个⽤于仓库管理系统的开源项⽬,使⽤作为代码管理⼯具,可通过Web界⾯进⾏访问公开的或者私⼈项⽬,⾮常适合在团队内部使⽤。
⼆、Gitlab(Github)与git
Gitlab和Git是两回事。Git是版本控制系统,Github是在线的基于Git的代码托管服务
Gitlab提供的功能:
代码托管服务
访问权限控制
问题跟踪,bug的记录和讨论
代码审查,可以查看、评论代码
社区版基于 MIT License开源完全免费
三、Gitlab安装
1、环境要求
#CPU
1核⼼的CPU,基本上可以满⾜需求,⼤概⽀撑100个左右的⽤户,不过在运⾏GitLab⽹站的同时,还需要运⾏多个worker以及后台job,显得有点捉襟见肘了。
两核⼼的CPU是推荐的配置,⼤概能⽀撑500个⽤户.
4核⼼的CPU能⽀撑 2,000 个⽤户.
8核⼼的CPU能⽀撑 5,000 个⽤户
#memory
你需要⾄少4GB的可寻址内存(RAM交换)来安装和使⽤GitLab!操作系统和任何其他正在运⾏的应⽤程序也将使⽤内存,因此请记住,在运⾏GitLab之前,您⾄少需要4GB的可⽤空间。使⽤更少的内存GitLab将在重新配置运⾏期间给出奇怪的错误,并在使⽤过程中发⽣500个错误.
1GBRAM + 3GB of swap is the absolute minimum but we strongly adviseagainst this amount of memory. See the unicorn worker section belowfor more advice.
2GBRAM + 2GB swap supports up to 100 users but it will be very slow
4GBRAM isthe recommended memory size for all installations and supportsup to 100 users
#Database
PostgreSQL ,MySQL/MariaDB
强烈推荐使⽤PostgreSQL⽽不是MySQL/ MariaDB,因为GitLab的所有功能都不能与MySQL/ MariaDB⼀起使⽤。例如,MySQL没有正确的功能来以有效的⽅式⽀持嵌套组.
运⾏数据库的服务器应⾄少有5-10 GB的可⽤存储空间,尽管具体要求取决于GitLab安装的⼤⼩
#Node exporter
节点导出器允许您测量各种机器资源,如内存,磁盘和CPU利⽤率。默认端⼝9100
2、安装
1) 关闭selinux和相关基本配置
#下⾯的命令实现永久关闭SELinux(/etc/selinux/config)需要重启系统之后⽣效
第7⾏ SELINUX=permissive
#下⾯的命令实现临时关闭SELinux
[root@git ~]# getenforce    #查看selinux状态
[root@git ~]# setenforce 0/1  #切换selinux状态
#永久修改下主机名,需要重启系统之后⽣效
Redhat7中修改
[root@noede1 ~]# vi /etc/hostname
gitlab.server
#添加域名
[root@git ~]#cat /etc/hosts
192.168.201.131  gitlab.server
2) 关闭防⽕墙
git使用详解Redhat6
[root@pos.d]# iptables -F              #临时关闭
[root@pos.d]# service iptables stop    #关闭防⽕墙服务
[root@pos.d]# chkconfig iptables off  #禁⽤防⽕墙
[root@pos.d]# chkconfig iptables --list
Redhat7
systemctl stop firewalld.service
也可以这样:systemctl enable sshd
      systemctl start sshd
      firewall-cmd -permanet -add-service=http
      systemctl reload firewalld
3)gitlab有两种安装⽅式,⼀种yum安装,⼀种rpm安装
yum安装
[root@pos.d]# vim /pos.po
[gitlab-ce]
name=gitlab-ce
baseurl=mirrors.tuna.tsinghua.edu/gitlab-ce/yum/el7
repo_gpgcheck=0
gpgcheck=0
enabled=1
gpgkey=packages.gitlab/gpg.key
如果想要在centos6系列上安装,只需把el7修改成el6
更新本地yum缓存
yum makecache
 Gitlab安装⽅式
yum install -y curl policycoreutils-python openssh-server openssh-clients
yum install –y gitlab-ce
###也可以指定版本号例如:yum install –y gilab-ce-10.3.3
rpm包安装(此处采⽤RPM包安装)
优点:安装过程简单,安装速度快。采⽤rpm包安装⽅式,安装的软件包便于管理。
缺点:数据库默认采⽤PostgreSQL,服务器默认采⽤Nginx,不容易定制
可以单独下载rpm包mirrors.tuna.tsinghua.edu/gitlab-ce/yum/
rpm -ivh gitlab-ce-8.8.0-ce.0.el6.x86_64.rpm
rpm 安装Gitlab的默认位置在/opt下
4)  修改配置⽂件,GitLab默认会占⽤80、8080和9090端⼝,很不巧,Jenkins默认也会使⽤8080端⼝,所以,这⼀步操作将会修改GitLab的默认端⼝为11000、11001和11002,如果你还是希望使⽤默认端⼝的话,可以跳过这⼀步
vim  /etc/gitlab/gitlab.rb
external_url='gitlab.server'
external_ur=‘修改成⾃⼰的ip或者域名’
external_url '<;你的服务器地址或域名>:11000'
# unicorn['port'] = 8080 ----> unicorn['port'] = 11001
#prometheus['listen_address'] = 'localhost:9090' ---> prometheus['listen_address'] = 'localhost:11002'
本次配置中在/etc/hosts定义了域名为gitlab.service
#修改配置⽂件之后,需要重新启动配置⽂件使之⽣效。
gitlab-ctl  reconfigure
6)  启动Gitlab服务
#启动服务
# gitlab-ctl start
#停⽌服务
# gitlab-ctl stop
#重启服务
# gitlab-ctl restart
#状态
#gitlab-ctl status
#监控
#gitlab-ctl  tailunicorn 监控unicorn⽇志
#gitlab-ctl  tail
7)  登陆gitlab
访问地址ip
由于第⼀次登陆,需要设置密码(这⾥的密码是管理员密码,管理员账号是root)
8)  Gitlab命令使⽤
start                启动所有服务
stop                关闭所有服务
restart            重启所有服务
status            查看所有服务状态
tail              查看⽇志信息
service-list        列举所有启动服务
graceful-kill      平稳停⽌⼀个服务
reconfigure      修改配置⽂件后需要重新加载
show-config            查看所有服务配置⽂件信息
uninstall          卸载这个软件
cleanse          删除gitlab数据
Gitlab配置详解
gitlab配置⽂件    /etc/gitlab/gitlab.rb
unicorn配置⽂件      /var/opt/gitlab/gitlab-rails/etc/unicorn.rb
nginx配置⽂件    /var/opt/gitlab/nginx/f
gitlab仓库默认位置    /var/opt/gitlab/git-data/repositories
四、卸载Gitlab
停⽌gitlab
Gitlab-ctl stop
查看Gitlab 安装包
rpm –qa | grep gitlab
删除gitlab
rpm –e gitlab-ce
查看gitlab 进程
ps aux | grep gitlab
杀掉所有gitlab 进程
Kill –9进程号
删除所有包含gitlab⽂件
find / -name | grep gitlab rm -rf
五、中⽂版安装
#Yum 安装gitlab10.3.3
yum -y localinstall mirrors.tuna.tsinghua.edu/gitlab-ce/yum/el7/gitlab-ce-10.3.3-ce.0.el7.x86_64.rpm  vim /etc/gitlab/gitlab.rb
gitlab-ctl reconfigure
# 清空缓存
gitlab-rake cache:clear RAILS_ENV=production
#从新启动gitlab
gitlab-ctl restart
#查看gitlab版本
cat /opt/gitlab/embedded/service/gitlab-rails/VERSION
#克隆 GitLab 仓库
git clone gitlab/xhang/gitlab.git
cd gitlab/
#查看对应的版本号
git tag
#对⽐不同,这⾥⽐较的是tag,v9.2.6为英⽂原版,v9.2.6-zh为版本。diff结果是补丁。
git diff v10.3.3..v10.3.3-zh > /tmp/10.3.3.diff
#停⽌gitlab
gitlab-ctl stop
#应⽤补丁
cd /opt/gitlab/embedded/service/gitlab-rails
git apply /tmp/10.3.3.diff
gitlab-ctl start
gitlab-ctl reconfigure
gitlab-ctl start

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。