前言
公司为了提高生产效率,提议针对于android自动构建以及发布,于是写下此片连续文章。
安装链接:
前期准备:
VirtualBox中文版 :vbox 的安装一路 next 就行了。
CentOS7:安装相应链接参考链接。ContOs7最佳,ContOs8某些配置会有问题暂未找到解决方案。
需要注意的是,在安装 CentOS7 的时候,内存和硬盘的大小分配的多一点,不然之后安装完 Gitlab 后,线上编译的时候容易 oom 导致编译失败。这里推荐内存4G,硬盘20G。
上面都暗转以后进行配置网络
为了不出现其他意外问题,这里网络要配置成跟主机在同一个网段,并且可连接外网
首先在 vbox 里边把网卡连接改为桥接模式
安装完成进入系统后先看一下网络信息:
输入ip addr
enp0s3是我的网卡名字,这个不是固定的,你的可能跟我的名字不一样
192.168.5.106是我 CentOS7 的 ip 地址。
如果你的 ip 信息里网卡没有 inet ip 信息,或者你的 ip 跟主机不在一个网段下,那么就需要配置一下 ip:
# 进入网络配置所在的文件夹
cd /etc/sysconfig/network-scripts
# 编辑网络配置文件(这里文件名字可能不一样,根据你的网卡的名字进入对应的文件进行编辑)
vi ifcfg-enp0s3
# ONBOOT="yes"
# BOOTPROTO="static"
# IPADDR="x.x.x.x" 这里配置跟主机一个网段的
# NETMASK="x.x.x.x" 子网掩码,跟主机保持一致
# GATEWAY="x.x.x.x" 网关,跟主机保持一致
# DNS1="8.8.8.8"
# DNS2="4.4.4.4"
# 进入编辑模式后,按 i 键进入 Insert 模式,此时可以修改文件,修改完成后按 esc 退出编辑模式,然后按 >:wq 保存和退出文件
# 重启网络服务使配置生效
service network restart
配置完之后,用 ping 命令测试一下网络:
如上面两张图,则表示网络配置没有问题。
虚拟电脑上安装 Gitlab 服务器
安装依赖
用超级管理者登陆虚拟电脑(eg.root)
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
sudo yum install postfix
sudo systemctl enable postfix
sudo systemctl start postfix
安装 Gitlab 服务
这里下载 rpm 包并安装,所以要先安装 wget
sudo yum install wget
# 在 https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7 中找一个最新版安装
# 这里我安装的是 gitlab-ce-11.9.9-ce.0.el7.x86_64
wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-11.9.9-ce.0.el7.x86_64.rpm
rpm -i gitlab-ce-11.9.9-ce.0.el7.x86_64.rpm
配置 gitlab url 和端口
安装成功之后,还需要配置一下 url 和端口才能正常访问,这里我给 gitlab 指定 8888 端口,不要忘了在防火墙里打开指定的端口
1.配置 url
因为是虚拟机,这里直接用虚拟机的 ip 地址
1./# 编辑文件 i 进入写模式,编辑完后 esc -> :wq 保存并退出
2.vi /etc/gitlab/gitlab.rb
找到 external_url 这个属性,把地址改为虚拟机 ip 并指定端口号:
# 使修改的配置生效
gitlab-ctl reconfigure
2.开放指定端口号
虽然 gitlab 指定了使用 8888 端口,但是这时候防火墙并没有开放这个端口,所以需要在防火墙配置一下。
首先查看一下防火墙开了哪些端口:
# 查看开放的端口列表
firewall-cmd --list-ports
# 开放 8888 端口
firewall-cmd --zone=public --add-port=8888/tcp --permanent
# 重启防火墙
firewall-cmd --reload
# 再次查看是否开放成功
firewall-cmd --list-ports
Gitlab 搭建完成
到这里 Gitlab 就安装完成了,在主机浏览器里输入地址,就能访问了:
首次登录用户名是 root,修改密码后就可以登录了。
FAQ
Gitlab 服务器迁移后,仓库的 clone 地址还是之前的地址?
在 /etc/gitlab/gitlab.rb 修改 gitlab 服务器地址之后,还需要再修改个文件才能使仓库的 clone 地址也变化:
参考资料
CentOS7查看开放端口命令
vbox虚拟机下centos7和windows主机无法ping通解决方法
centos7安装部署gitlab服务器
centos7开放及查看端口
参考文章