一、规划工作
操作系统的安装参考我的这个帖子
机器规划如下
ip | 服务器名称 | 作用 | 其他 |
---|---|---|---|
192.168.122.25 | gitlab1 | 主节点 | 非高可用环境下, 作为服务提供端; 高可用环境下,作为主节点 |
192.168.122.26 | gitlab2 | 从节点 | 非高可用环境下, 作为备份; 高可用环境下,作为从节点 |
二、准备
gitlab的安装需要一些辅助工具,包括ssh、postfix(用于邮件通知)、policycoreutils-python
2.1:安装上述软件
#ssh
[root@gitlab1 local]# yum install openssh-server
#设置成开机启动并启动
[root@gitlab2 local]# systemctl enable sshd
[root@gitlab2 local]# systemctl start sshd
#python
[root@gitlab1 local]# yum install policycoreutils-python
#postfix
[root@gitlab1 local]# yum install postfix
#设置成开机启动并启动
[root@gitlab2 local]# systemctl enable postfix
[root@gitlab2 local]# systemctl start postfix
三、安装Gitlab
从从这里下载Centos7的gitlab之rpm安装包,然后放到任意路径下(我放到了/usr/local/路径)得到gitlab-ce-13.0.12-ce.0.el7.x86_64.rpm和gitlab-ce-13.1.6-ce.0.el7.x86_64.rpm 两个文件(后者用来测试向高版本gitlab版本迁移)。如下图所示
#安装
[root@gitlab1 local]# rpm -i gitlab-ce-13.0.12-ce.0.el7.x86_64.rpm
过程中可能会需要一些时间,稍等就好。当看到如下图所示内容,说明安装完成。进行配置文件的设置即可。
然后修改核心配置文件 。主要是修改暴露出的ip地址,如果默认80端口被占用,需要修改nginx的对应配置
[root@gitlab1 local]# vim /etc/gitlab/gitlab.rb
#主要修改配置文件中的以下内容。改成自己的ip即可
external_url 'http://192.168.122.25'
#令配置生效
[root@gitlab1 local]# gitlab-ctl reconfigure
#重启gitlab
[root@gitlab1 local]# gitlab-ctl restart
#如果这时无法访问,而且是实验环境,可以关闭防火墙
[root@gitlab1 local]# systemctl stop firewalld.service
#永久关闭防火墙
[root@gitlab1 local]# systemctl disable firewalld.service
第一次登录,需要设置root用户的密码,如下图所示
四、卸载
都放在一个代码块儿里面写吧。好多文章并没有在卸载后彻底删除gitlab。这会造成再次在当前服务器安装时产生异常。
##停服务
[root@gitlab1 ~]# gitlab-ctl stop
##卸载。一般我们自己试验,装的都是ce版(猴版),企业装的是ee版。根据对应版本调整卸载命令
[root@gitlab1 ~]# rpm -e gitlab-ce
##删进程。找到进程中含有“gitlab/service log”的那个守护进程,删掉即可
[root@gitlab1 ~]# ps -ef|grep gitlab
##删gitlab文件。用下面这个命令,不能全部删除,会在再次安装配置时产生异常
[root@gitlab1 ~]# find / -name '*gitlab*' |xargs rm -rf
##查找其他剩余的gitlab的文件,都删除,这样才能保证再次安装不会有异常
[root@gitlab1 ~]# find / -name '*gitlab*'
/etc/selinux/targeted/active/modules/400/gitlab-7.2.0-ssh-keygen
/etc/selinux/targeted/active/modules/400/gitlab-10.5.0-ssh-authorized-keys
/etc/systemd/system/multi-user.target.wants/gitlab-runsvdir.service
/etc/sysctl.d/90-omnibus-gitlab-kernel.shmmax.conf
/etc/sysctl.d/90-omnibus-gitlab-kernel.shmall.conf
/etc/sysctl.d/90-omnibus-gitlab-kernel.sem.conf
/usr/bin/gitlab-redis-cli
/usr/lib/systemd/system/gitlab-runsvdir.service
/usr/local/gitlab-ce-13.1.6-ce.0.el7.x86_64.rpm