gitlab介绍
GitLab 是一个用于仓库管理系统的开源项目,使用Git作为代码管理工具,并在此基础上搭建起来的Web服务。
安装
查看环境
cat /etc/redhat-release

yum安装
配置yum源
vim /etc/yum.repos.d/gitlab-ce.repo
[gitlab-ce]
name=Gitlab CE Repository
baseurl=https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el$releasever/
gpgcheck=0
enabled=1

更新本地yum缓存
yum makecache
##yum install gitlab-ce-x.x.x -y
yum install gitlab-ce-x.x.x

小猿已经上传了rpm包,就不以yum形式安装。
在线下载
wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-14.10.5-ce.0.el7.x86_64.rpm
离线上传
离线下载后上传即可
安装
rpm -ivh gitlab-ce-14.10.5-ce.0.el7.x86_64.rpm


配置gitlab
vim /etc/gitlab/gitlab.rb

更新配置
gitlab-ctl stop
gitlab-ctl reconfigure gitlab

上述过程可能跟新时间有点长,可以耐心等待一会儿,如果出现“ruby_block[supervise_redis_sleep] action run”卡死的情况,可能需要我们重新曹操以下
可以执行以下命令
systemctl restart gitlab-runsvdir
gitlab-ctl reconfigure
启动
gitlab-ctl start
gitlab-ctl restart

也可直接访问配置端口
配置nginx
vim /etc/gitlab/gitlab.rb
## 设置内部到达地址可设也可不设置
external_url 'http://114.116.4.xxxx:xxxx'
## 或者直接可以放域名
#external_url 'http://git.feitiankeji.com:28000'
#关闭自带的nginx
nginx['enable'] = false
web_server['external_users'] = ['nginx']
#开启gitlab_workhorse
gitlab_workhorse['enable'] = true
gitlab_workhorse['listen_network'] = "tcp"
##该端口号和将要配置的Nginx代理的端口号要一致
gitlab_workhorse['listen_addr'] = "127.0.0.1:9099"
#设置信任代理ip
gitlab_rails['trusted_proxies'] = [127.0.0.1]
#设置GitLab Sidekiq 服务器配置有限,可以酌情去掉一些功能
sidekiq['concurrency'] = 8
#禁止监控,减少对服务器的损耗
prometheus_monitoring['enable'] = false
nginx 配置
upstream gitlab-workhorse {
#该处与gitlab 中的 gitlab_workhorse 一致
server 127.0.0.1:9099;
}
server {
listen 9000;
server_name 114.116.4.143;
server_tokens off; ## Don't show the nginx version number, a security best practice
#return 301 https://$http_host$request_uri;
location / {
#proxy_pass http://gitlab.68.com:12580;
root html;
index index.html index.htm;
client_max_body_size 1024m;
proxy_redirect off;
proxy_set_header Host $host:$server_port;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://gitlab-workhorse;
}
access_log /var/log/gitlab/gitlab_access.log;
error_log /var/log/gitlab/gitlab_error.log;
}

外部redis配置
# Disable the bundled Redis
redis['enable'] = false
# Redis via TCP
gitlab_rails['redis_host'] = '127.0.0.1'
gitlab_rails['redis_port'] = 6379
# OR Redis via Unix domain sockets
gitlab_rails['redis_socket'] = '/tmp/redis.sock' # defaults to /var/opt/gitlab/redis/redis.socket
# Password to Authenticate to alternate local Redis if required
gitlab_rails['redis_password'] = '<redis_password>'
查看错误日志
gitlab-ctl tail gitaly

卸载gitlab
停止gitlab
gitlab-ctl stop
停止与gitlab有关的所有进程
ps -ef | grep gitlab | grep -v grep |cut -c 9-15|xargs kill -9
- 注释
"grep -v grep"是在列出的进程中去除含有关键字"grep"的进程。
"cut -c 9-15"是截取输入行的第9个字符到第15个字符,而这正好是进程号PID。
"xargs kill -9"中的xargs命令是用来把前面命令的输出结果(PID)作为"kill -9"命令的参数,并执行该令
卸载gatlab
先查看后卸载
rpm -e gitlab-ce-9.5.9-ce.0.el7.x86_64
删除与gitlab有关的文件
find / -name gitlab | xargs rm -rf
参考文献
gitlab官网 https://docs.gitlab.com/ee/
版权声明:本文为xueshanfeitian原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。