Docker 搭建 gitlab 服务器卡顿问题解决方法(创建:swap分区)

++Docker 安装系列++

服务器搭建了一个 gitlab 服务器以供自己开发使用,服务器搭建很简单,但是使用起来是相当的卡顿,在代码 pull,push 过程中都会有相应的延迟。gitlab 启动运行就占用了大量的内存,4G内存在启动后已经所剩无几。想再进行 git 相关操作自然也就会出现卡顿现象。

通过 cat /proc/swaps 命令查看swap分区情况:

结果如下图所示,可以看到并没有swap分区:

root@flexusx-328569 data\]# cat /proc/swaps Filename Type Size Used Priority \[root@flexusx-328569 data\]#

解决方法-全部步骤

root@flexusx-328569 \~\]# dd if=/dev/zero of=/data/swap bs=512 count=8388616 8388616+0 records in 8388616+0 records out 4294971392 bytes (4.3 GB, 4.0 GiB) copied, 34.1612 s, 126 MB/s \[root@flexusx-328569 \~\]# mkswap /data/swap mkswap: /data/swap: insecure permissions 0644, fix with: chmod 0600 /data/swap Setting up swapspace version 1, size = 4 GiB (4294967296 bytes) no label, UUID=85a751ba-873a-4c54-9e3c-7e78353da71b \[root@flexusx-328569 \~\]# cat /proc/sys/vm/swappiness 0 \[root@flexusx-328569 \~\]# sysctl -w vm.swappiness=60 vm.swappiness = 60 \[root@flexusx-328569 \~\]# cat /proc/sys/vm/swappiness 60 \[root@flexusx-328569 \~\]# swapon /data/swap swapon: /data/swap: insecure permissions 0644, 0600 suggested. \[root@flexusx-328569 \~\]# cat /proc/swaps Filename Type Size Used Priority /data/swap file 4194304 0 -2 \[root@flexusx-328569 \~\]# cd /data/ \[root@flexusx-328569 data\]# ls gitlab nginx redis swap \[root@flexusx-328569 data\]#

1、创建 swap 分区(这里需要等待几秒)

root@flexusx-328569 \~\]# dd if=/dev/zero of=/data/swap bs=512 count=8388616 8388616+0 records in 8388616+0 records out 4294971392 bytes (4.3 GB, 4.0 GiB) copied, 34.1612 s, 126 MB/s \[root@flexusx-328569 \~\]#

注意:创建swap大小为bs*count=4294971392(4G),/data/swap目录若无则找/mnt/swap

2、通过mkswap命令将上面新建出的文件做成swap分区

root@flexusx-328569 \~\]# mkswap /data/swap mkswap: /data/swap: insecure permissions 0644, fix with: chmod 0600 /data/swap Setting up swapspace version 1, size = 4 GiB (4294967296 bytes) no label, UUID=85a751ba-873a-4c54-9e3c-7e78353da71b \[root@flexusx-328569 \~\]#

3、查看内核参数vm.swappiness中的数值是否为0,如果为0则根据实际需要调整成60

查看参数:

cat /proc/sys/vm/swappiness

设置参数:

sysctl -w vm.swappiness=60

4、启用 swap 分区

swapon /data/swap

echo "/data/swap swap swap defaults 0 0" >> /etc/fstab

5、再次使用cat /proc/swaps 查看swap分区是否启动

root@flexusx-328569 data\]# cat /proc/swaps Filename Type Size Used Priority /data/swap file 4194304 25940 -2 \[root@flexusx-328569 data\]#

可以看到,swap分区已经启用,现在通过 gitlab 进行操作会发现很流畅

相关推荐
ulias2126 小时前
Linux系统中的权限问题
linux·运维·服务器
青花瓷7 小时前
Ubuntu下OpenClaw的安装(豆包火山API版)
运维·服务器·ubuntu
问简8 小时前
docker 镜像相关
运维·docker·容器
Dream of maid9 小时前
Linux(下)
linux·运维·服务器
齐鲁大虾9 小时前
统信系统UOS常用命令集
linux·运维·服务器
Benszen9 小时前
Docker容器化技术实战指南
运维·docker·容器
Hommy889 小时前
【开源剪映小助手】Docker 部署
docker·容器·开源·github·aigc
专吃海绵宝宝菠萝屋的派大星11 小时前
使用Dify对接自己开发的mcp
java·服务器·前端
斯普信云原生组11 小时前
Prometheus 环境监控虚机 Redis 方案(生产实操版)
运维·docker·容器
大数据新鸟11 小时前
操作系统之虚拟内存
java·服务器·网络