本文摘自PHP中文网,作者藏色散人,侵删。
环境要求:内存至少4G,GitLab是很耗内存滴
一、 安装并配置必要的依赖关系
在 CentOS 系统上,下面的命令将会打开系统防火墙 HTTP 和 SSH 的访问。
1 2 3 4 5 | $ sudo yum install -y curl policycoreutils-python openssh-server
$ sudo systemctl enable sshd
$ sudo systemctl start sshd
$ sudo firewall-cmd --permanent --add-service=http
$ sudo systemctl reload firewalld
|
安装 Postfix ,用来发送邮件,在安装 Postfix 的过程中选择 'Internet Site'。
1 2 3 | $ sudo yum install postfix
$ sudo systemctl enable postfix
$ sudo systemctl start postfix
|
也可以配置自定义的 SMTP 服务器。
二、 添加 GitLab 镜像仓库并安装
gitlab-ce 是社区版,免费
gitlab-ee 是企业版,收费
2.1 使用官方镜像安装
1 2 3 | $ curl https:
$ sudo EXTERNAL_URL= "http://gitlab.example.com" yum install -y gitlab-ce # 安装 GitLab
|
2.2 使用国内镜像安装(推荐)
如果提示连接超时,可以使用 清华大学开源软件镜像站:https://mirror.tuna.tsinghua....。
进入该网站后,有详细的安装步骤,跟着安装即可。
这里介绍一下在CentOS中使用 清华大学开源软件镜像站安装:
先还原yum源, 删掉gitlab-ce源 :
1 2 | $ ls -l /etc/yum.repos.d/ # 查看源配置项
$ mv /etc/yum.repos.d/gitlab_gitlab-ce.repo /etc/yum.repos.d/gitlab_gitlab-ce.repo.bak # 备份源配置项(也可以直接删除 rm)
|
新建 /etc/yum.repos.d/gitlab-ce.repo,内容为
1 2 3 4 5 | [gitlab-ce]
name=Gitlab CE Repository
baseurl=https:
gpgcheck=0
enabled=1
|
再执行
1 2 | $ sudo yum makecache
$ sudo yum install gitlab-ce
|
安装完以后 /opt/gitlab/ 目录结构
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 | /opt/gitlab/
├── backups
├── git-data
│ └── repositories
│ └── root
├── gitlab-ci
│ └── builds
├── gitlab-rails
│ ├── etc
│ ├── shared
│ │ ├── artifacts
│ │ ├── lfs-objects
│ │ └── pages
│ ├── sockets
│ ├── tmp
│ ├── upgrade-status
│ ├── uploads
│ └── working
├── gitlab-shell
├── gitlab-workhorse
├── logrotate
│ └── logrotate.d
├── nginx
│ ├── client_body_temp
│ ├── conf
│ ├── fastcgi_temp
│ ├── logs -> / var /log/gitlab/nginx
│ ├── proxy_cache
│ ├── proxy_temp
│ ├── scgi_temp
│ └── uwsgi_temp
├── postgresql
│ └── data
│ ├── base
│ │ ├── 1
│ │ ├── 12918
│ │ ├── 12923
│ │ └── 16385
│ ├── global
│ ├── pg_clog
│ ├── pg_multixact
│ │ ├── members
│ │ └── offsets
│ ├── pg_notify
│ ├── pg_serial
│ ├── pg_snapshots
│ ├── pg_stat_tmp
│ ├── pg_subtrans
│ ├── pg_tblspc
│ ├── pg_twophase
│ └── pg_xlog
│ └── archive_status
└── redis
|
三、 配置并启动 GitLab
启动命令
1 2 3 | $ sudo gitlab-ctl reconfigure # 首次启动也要用此命令。重新加载配置并启动
$ sudo gitlab-ctl start # 启动
$ sudo gitlab-ctl stop # 停止
|
/etc/gitlab/ 目录结构:
1 2 3 4 5 | /etc/gitlab/
├── gitlab.rb
├── gitlab-secrets.json
└── ssl
└── trusted-certs
|
gitLab基本配置集中在 /etc/gitlab/gitlab.rb 文件, 每个参数的作用和配置请参考官网的配置说明.
配置参数:
1 2 3 4 5 6 7 8 | ### Advanced settings
# unicorn[ 'listen' ] = 'localhost'
# unicorn[ 'port' ] = 8090 #默认是8080端口
nginx[ 'listen_port' ] = 8081 # gitlab nginx 端口。默认端口为:80
external_url 'http://192.168.137.129' # clone 时显示的地址,gitlab 的域名
|
配置:
1 2 | $ sudo gitlab-ctl stop # 先停止 GitLab 服务
$ vim /etc/gitlab/gitlab.rb # 修改配置文件
|
进行任何改动后, 保存退出, 在命令行逐个输入以下命令使配置生效
启动数据库, 不然 reconfigure 报错
1 2 3 | $ sudo gitlab-ctl restart postgresql
$ sudo gitlab-ctl reconfigure
$ sudo gitlab-ctl start
|
四、访问
系统默认的管理员账号为 root,第一次访问 GitLab,会要求初始化管理员账号的密码。
五、端口冲突问题
装好后,你会发现一个问题;gitlab 其实是个web;他自带了个nginx;如果你本身也是一台服务器的话,上面也会装有 apache 或者 nginx 等;那么端口就冲突了;
更改gitlab自带nginx的默认端口即可
六、卸载GitLab
1 2 3 4 5 | $ sudo gitlab-ctl stop # 停止
$ sudo rpm -e gitlab-ce # 卸载
$ ps aux | grep gitlab # 查看守护进程
$ kill -9 18777 # 杀掉守护进程
$ find / -name gitlab | xargs rm -rf # 删除所有包含gitlab的文件
|
更多centos相关技术文章,请访问centos教程栏目!
以上就是CentOS7如何搭建GitLab的详细内容,更多文章请关注木庄网络博客!
相关阅读 >>
centos7下80端口无法访问怎么办
centos6与centos7有哪些区别
centos7下网络ping不通
如何在centos7下配置ftp服务器
解决如何在centos7桌面中打开终端
关于centos7 fastdfs部署
centos7系统重启网卡失败
centos7安装zabbix的详细介绍
centos7如何设置静态ip地址
如何在centos7在设置ip地址
更多相关阅读请进入《gitlab》频道 >>
转载请注明出处:木庄网络博客 » CentOS7如何搭建GitLab