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 进行操作会发现很流畅

相关推荐
万山y4 分钟前
## Docker 中 Elasticsearch 启动失败:日志文件权限问题排查与解决
elasticsearch·docker·jenkins
Clownseven35 分钟前
[服务器备份教程] Rclone实战:自动备份数据到阿里云OSS/腾讯云COS等对象存储
服务器·阿里云·腾讯云
群联云防护小杜41 分钟前
物联网僵尸网络防御:从设备认证到流量染色
运维·服务器·前端·网络·物联网·安全·ddos
Zero two and hiro43 分钟前
tomcat一闪而过,按任意键继续以及控制台中文乱码问题
java·服务器·tomcat
Web极客码1 小时前
WordPress搜索引擎优化的最佳重定向插件:入门指南
运维·服务器·前端
中国lanwp1 小时前
在Maven中替换文件内容的插件和方法
服务器·数据库·maven
Kendra9192 小时前
Docker 运维管理
运维·docker·容器
胜玲龙2 小时前
单点登录是是什么?具体流程是什么?
java·服务器·前端
不愧是你呀2 小时前
Linux利用多线程和线程同步实现一个简单的聊天服务器
linux·服务器
破晓的历程3 小时前
Qt之QMessageBox
服务器·开发语言·qt