CentOS7如何搭建GitLab


本文摘自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://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash

 

$ 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://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el$releasever/

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》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...