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

相关推荐
djjjx.12 小时前
Linux进程篇(四):内核托底与生死交错 ,深度硬核剖析“僵尸”与“孤儿”进程
linux·运维·服务器
为思念酝酿的痛13 小时前
Reactor反应堆模式
linux·服务器·网络
沫璃染墨13 小时前
从零入门计算机网络系列(六):TCP套接字编程实战——从listen监听到客户端与服务器通信
linux·服务器·c++·tcp/ip·计算机网络·tcp
2401_8724187813 小时前
把 Ubuntu 服务器变成 AI Agent 终端:用自然语言或语音管理 Linux,任何命令都先审批(附完整 Python 源码)
linux·服务器·ubuntu·agent
weixin_4379619213 小时前
Docker安装(windows)
windows·docker·容器
GPU实战笔记13 小时前
Docker Hub 项目镜像拉取前提:缓存区域节点的可扩容数据盘
docker·docker hub·容器镜像·a100·gpu云计算
迪康coolmu13 小时前
基于迪康端点安全一体化管理系统的公用终端上机与信创补丁实战
linux·运维·服务器·网络·安全·电脑
承渊政道14 小时前
极空间部署Portainer实战:Docker Socket、9000端口、容器管理与固定地址访问
运维·docker·容器·内网穿透·cpolar·portainer
Shadow(⊙o⊙)14 小时前
仿muduo实现高并发服务器——EPOLL设置与移除Poller.hpp管理Channel
运维·服务器·c++
Vitaliy Kostrov(柯维远)14 小时前
客户端如何检查直播流:从流内标记到停止播放
android·运维·服务器·驱动开发·网络安全·系统架构·cdn