问题是在我买了一个vps之后,在上面搭建 gitlab,安装完成之后启用主页报出的,具体情况如下图:
在这里插入图片描述
分析可能是因为 gitlab 设置的端口号被占用了;或者是因为 gitlab 占用的内存过多导致。

我的实际情况是在安装完gitlab安装包之后,系统执行指令过程中就一直开始报:OutOfMemory: ERROR: out of memory 的问题,这个很明显就是 gitlab 占用系统内存过多导致的了。


解决方法:

  1. 由于8080端口经常被占用,因此在设置 extern_url 就指定另外的端口号:
    url

  2. 关于Unicorn Workers:
    CPU cores + 1 = unicorn workers,一般情况下设置为2或者3就足够了使用了;但需要注意的是:如果unicorn workers只有1,那么将导致git只能通过ssh协议进行工作,因为使用http协议时,分别需要各一个worker来接收和发送数据。

    由于这个gitlab只有我一个人使用,所以可以把unicorn workers设为 2,保证http主页能打开即可;
    workers

sudo vim /etc/gitlab/gitlab.rb
修改完上面两项内容之后,保存退出

重新配置并启动gitlab
sudo gitlab-ctl reconfigure
  1. 关于内存这一块,gitlab 需要至少2GB的内存(RAM+SWAP),官方给出的建议如下:

    512MB RAM + 1.5GB of swap is the absolute minimum but we strongly advise against this amount of memory. See the unicorn worker section below for more advise.
    1GB RAM + 1GB swap supports up to 100 users but it will be slow
    2GB RAM is the recommended memory size and supports up to 100 users
    4GB RAM supports up to 1,000 users
    8GB RAM supports up to 2,000 users
    16GB RAM supports up to 4,000 users
    32GB RAM supports up to 8,000 users
    64GB RAM supports up to 16,000 users
    128GB RAM supports up to 32,000 users
    More users? Run it on multiple application servers

因为我买的vps默认只有1G的 RAM(所以 gitlab 开启之后,系统很长时间无论执行什么命令都报 memory error),所以给机器另外开了2G的 swap。

dd if=/dev/zero of=/home/swap bs=1024 count=2097152
制作swap
mkswap /home/swap
挂载swap
swapon /home/swap

最后最好把swap写到fstab中,使其自动挂载
sudo vim /etc/fstab

fstab
挂载完之后,可以看到系统的内存多出2G的swap空间:
free
vps的contorl panel也可以看到内存的使用情况(可以看到系统内存占用确实很多):
swap


以上操作完之后,就可以看到熟悉的登陆界面了(根据机器内存和性能,还有和谐*网速,打开UI页面速度还是挺慢的,不过对代码push还是影响比较小)
gitlab

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐