CentOs下搭建GitLab
gitlab提供ce 和 ee两个版本,从官网的解释来看,如果想体验完整的功能则安装ee版并付费,不然体验时间过后ee版将自动降级为ce版,所以看个人需求安装。二者的区别:https://about.gitlab.com/installation/ce-or-ee/
1、安装并配置必要的依赖项
yum install -y curl policycoreutils-python openssh-server #安装py,ssh依赖项
systemctl enable sshd #设置sshd开机启动
systemctl start sshd #启动sshd服务
firewall-cmd --permanent --add-service=http #对外暴露http服务
#(如果提示firewallD is not running,则通过命令查看防火墙是否已经关闭:systemctl status firewalld)
#(如果状态是dead,则重启防火墙:systemctl start firewalld)
systemctl reload firewalld #重新载入firewalld
2、添加GitLab软件包并安装软件包
curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ee/script.rpm.sh | sudo bash #下载软件包,如果安装ce版,只需将ee改成ce
sudo EXTERNAL_URL="http://gitlab.example.com" yum install -y gitlab-ee #安装软件包,将http://gitlab.example.com改成你的访问地址,如果安装ce版,只需将ee改成ce
汉化步骤:
- 查看gitlab版本(如果安装ce版,只需将ee改成ce):rpm -q gitlab-ee
- 下载gitlab汉化包(根据上面查出的版本下载):wget https://gitlab.com/xhang/gitlab/repository/11-3-stable-zh/archive.tar.bz2
- 解压汉化包(解压报错“tar (child): lbzip2: Cannot exec”的话,则先安装bz2:yum -y install bzip2):tar -xjvf archive.tar.bz2
- 将解压出的文件copy到gitlab下的gitlab-rails文件替换掉原来的内容:cp -rf gitlab-11-3-stable-zh/* /opt/gitlab/embedded/service/gitlab-rails/
- 汉化完成,忽略log、temp覆盖报错问题。
3、访问
首次访问时,将被重定向到密码重置界面。默认帐户的用户名root,访问地址就是第二步填写的地址。
4、gitlab常用命令:
sudo gitlab-ctl stop # 停止所有 gitlab 组件;
sudo gitlab-ctl restart # 重启所有 gitlab 组件;
sudo gitlab-ctl status # 查看服务状态;
sudo gitlab-ctl reconfigure # 启动服务;
sudo vim /etc/gitlab/gitlab.rb # 修改默认的配置文件;
sudo gitlab-ctl tail # 查看日志;
备注:
- 系统内存如果太小,访问gitlab会502,所以要么升级系统硬件,要么修改一下./etc/gitlab/gitlab.rb中的配置,要么添加swap分区解决内存问题。
- postfix邮箱系统看个人需求安装。
- 官方文档:https://about.gitlab.com/installation/
创建swap分区方法如下:
free -h #先看看是否已经创建
#没有创建的话,继续一下步骤
dd if=/dev/zero of=/var/swapfile bs=1024 count=4096k #添加swap分区
mkswap /var/swapfile #交换文件格式化并转换为swap分区
swapon /var/swapfile #挂载并激活分区
free -h #查看分区
**********************************************************************************************分割线**********************************************************************************************
以下来记录如何彻底删除gitlab:
1、停止gitlab
gitlab-ctl stop
2、rpm包管理删除,rpm命令-e是删除指定套件
rpm -e gitlab-ee #免费版是ce
3、查看gitlab进程
ps aux | grep gitlab
4、kill掉查询出来的进程
SIGKILL
5、删除包含gitlab的文件
find / -name gitlab | xargs rm -rf #-rf能强删掉所以文件和其子文件