YUM安装
# 安装gitlab包和依赖
yum -y install policycoreutils-python
rpm -Uvh http://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-11.2.5-ce.0.el7.x86_64.rpm
# 安装Postfix以发送通知电子邮件
yum -y install postfix
systemctl enable postfix
systemctl start postfix
编辑配置文件/etc/gitlab/gitlab.rb
的external_url
字段
# external_url 'https://gitlab.example.com' #配置服务器ip和端口
external_url 10.211.55.5
搭建部署gitlab
# 初始化GitLab
gitlab-ctl reconfigure
# 重启GitLab
gitlab-ctl restart
# 开机启动
systemctl enable gitlab-runsvdir
网页访问,然后配置一个密码 1qaz@WSX,然后登陆
:::info 网页遇到502报错的原因 :::
- Gitlab刚启动很慢,要等待一会(基本百分百的原因)
- 内存至少要4G
- 端口被占用
- 权限:
chmod -R 755 /var/log/gitlab
开始登陆,账号root,密码1qaz@WSX
修改语言更好的玩转GitLab,但是有些地方汉化还是存在问题
右上角头像 -> settings -> Profile -> Preferred language
查看版本号
# 方法一
cat /opt/gitlab/embedded/service/gitlab-rails/VERSION
# 方法二
gitlab-rake gitlab:env:info
GitLab的组成
Gitlab服务构成:
nginx
:静态web服务器gitlab-workhorse
:轻量级的反向代理服务器logrotate
:日志文件管理工具postgresql
:数据库redis
:缓存数据库sidekiq
:用于在后台执行队列任务(异步执行)unicorn
:An HTTP server for Rack applications,GitLab Rails应用是托管在这个服务器上面的。(Ruby Web Server,主要使用Ruby编写)
Gitlab基本使用
修改端口
GitLab如果默认端口号和别的服务冲突怎么办,所以我们要修改端口。
1.停止服务
gitlab-ctl stop
2.修改/etc/gitlab/gitlab.rb
#unicorn['port'] = 8080 修改 8070 默认是注释的去掉前面的#
unicorn['port'] = 8070
#nginx['listen_port'] = nil 修改 8090 默认是注释的去掉前面的#
nginx['listen_port'] = 8090
3.修改/var/opt/gitlab/gitlab-rails/etc/unicorn.rb
#listen "127.0.0.1:8080", :tcp_nopush => true
listen "127.0.0.1:8070", :tcp_nopush => true
修改默认的gitlab nginx的web服务80端 /var/opt/gitlab/nginx/conf/gitlab-http.conf
4.修改/var/opt/gitlab/nginx/conf/gitlab-http.conf
#listen *:80;
listen *:8090;
5.重新配置gitlab
gitlab-ctl reconfigure
6.重新启动gitlab
gitlab-ctl restart
7.网页访问ip:8090
Gitlab权限管理
Gitlab用户在组中有五种权限:Guest
、Reporter
、Developer
、Master
、Owner
Guest
:可以创建issue、发表评论,不能读写版本库Reporter
:可以克隆代码,不能提交,QA、PM可以赋予这个权限Developer
:可以克隆代码、开发、提交、push,RD可以赋予这个权限Master
:可以创建项目、添加tag、保护分支、添加项目成员、编辑项目,核心RD负责人可以赋予这个权限Owner
:可以设置项目访问权限 - Visibility Level、删除项目、迁移项目、管理组成员,开发组leader可以赋予这个权限
Gitlab中的组和项目有三种访问权限:Private、Internal、Public
- Private:只有组成员才能看到
- Internal:只要登录的用户就能看到,开源项目和组设置的是Internal
- Public:所有人都能看到
GitLab命令
#开机启动gitlab
sudo systemctl enable gitlab-runsvdir.service
# 禁止开机启动
sudo systemctl disable gitlab-runsvdir.service
#启动gitlab
gitlab-ctl start