低配置服务器安装GitLab

1核2GB内存的低配学生服务器安装GitLab教程


我的学生服务器配置

腾讯云服务器Ubuntu 18.04 bionic
标准型S2/1核/2GB/1Mbps

在内存爆掉,重启服务器,停止服务,十几次尝试后终于愉快的让GitLab运行了起来


GitLab

GitLab 是一个提供代码托管、提交审核和问题跟踪的代码管理平台。可以理解为Github的私服版作为自用或者公司内部的代码管理平台。

GitLab官方硬件要求:

建议服务器最低配置:

  • 2核 2G以上内存(不包含2GB,2GB内存运行的时候内存直接爆掉)

官网给出的推荐配置:

  • 4核 4GB内存 支持500个用户
  • 8核 8GB内存 支持1000个用户

网上对配置有很多说法,有的说3GB内存可以勉强跑起来,有的说至少给gitlab分4GB内存,学生党的2GB根本没法看啊,一开始不知道这么吃内存,每次一安装完就卡死,还以为安装流程有问题,经过很多尝试终于在自己可怜的学生服务器上运行起来了。

低配置服务器安装GitLab_第1张图片

安装教程

官网给出的ubuntu服务器gitlab企业版安装教程,里面还有其它种类服务器的安装教程和安装资源,可以下载安装包离线安装,下面的是ubuntu在线安装过程

安装依赖

sudo apt-get install -y curl openssh-server ca-certificates

安装Postfix

Postfix用来发送通知电子邮件,在Postfix安装期间,可能会出现配置屏幕。选择“Internet Site”并按Enter键。使用服务器的外部DNS作为“邮件名称”,然后按Enter键。如果出现其他屏幕,请继续按Enter键接受默认值。(我只按回车了,并不影响安装)

sudo apt-get install -y postfix

添加gitlab官方源

curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash

安装gitlab

tip:gitlab-ce是免费的社区版,gitlab-ee是付费的企业版

下面my ip address改为为gitlab设置的url,比如(https://服务器外网地址或绑定的域名:端口)

sudo EXTERNAL_URL="https://my ip address" apt-get install gitlab-ce

这里配置如果够,就可以访问https://my ip address进入gitlab管理页面了,可以跳转到《运行以后》

如果配置不够,3分钟gitlab所有服务运行以后,内存就应该爆掉了,停止gitlab后,进行优化

停止gitlab

下面命令只有gitlab在运行的时候才会起作用,不运行的时候会返回fail,内存爆掉也会不响应

sudo gitlab-ctl stop

如果内存爆掉输入命令没有响应,只能重启以后在gitlab没有完全撑爆内存的时候执行

服务器重启

  • 如果服务器还对重启指令有反应

    sudo reboot
    
  • 彻底没反应了

    服务器管理页面强制重启或者物理强制重启


优化

降低gitlab配置

修改配置文件

sudo vi /etc/gitlab/gitlab.rb
删除#号取消以下设置的注释,并修改参数

tip:vi编译器中搜索的方法: 命令模式下,输入/字符串,按下回车,得到搜索的结果,按n键切换搜索结果

1.减少进程数,修改worker_processes:

官方建议CPU核心数加一,最小值是2

unicorn['worker_processes'] = 2
2.减少数据库缓存

可适当改小

postgresql['shared_buffers'] = "256MB"
3.减少数据库并发数

可适当改小

postgresql['max_worker_processes'] = 8
4.减少sidekiq并发数

可适当改小

sidekiq['concurrency'] = 25

添加swap分区(虚拟内存)

Swap分区在系统的物理内存不够用的时候,把硬盘内存中的一部分空间释放出来,以供当前运行的程序使用。那些被释放的空间可能来自一些很长时间没有什么操作的程序,这些被释放的空间被临时保存到Swap分区中,等到那些程序要运行时,再从Swap分区中恢复保存的数据到内存中。

创建一个连续空间

dd if=/dev/zero of=/data/swap bs=512 count=8388616

创建swap分区

mkswap /data/swap

启动swap分区

swapon /data/swap

在/etc/fstab文件中记录文件的名字,使系统重启后,swap依然有效

echo “/data/swap swap swap defaults 0 0” >> /etc/fstab

查看swap分区是否启动

cat /proc/swaps

在这里插入图片描述

重加载gitlab配置

sudo gitlab-ctl reconfigure

启动gitlab

sudo gitlab-ctl start

利用free -m查看内存发现,gitlab在运行服务的时候就已经占用2.47g的内存了
在这里插入图片描述

运行以后

启动服务3分钟以后

1.访问ip address登录控制页面

2.首次登陆强制更改密码,输入密码和确认密码

3.到达登录界面

  • 账户名:root
  • 密码:更改的密码

遇到的坑

启动以后502

【解决方案】
1.启动服务以后等待几分钟再访问
2.修改冲突的端口号
3.内存不足导致一些服务崩了,用优化方法优化

运行感觉不是很流畅

换成谷歌或者火狐浏览器会感觉好很多


其它

gitlab取消注册,只允许管理员添加

你可能感兴趣的:(ubuntu,gitlab,git,云服务器)