在新买的阿里云2C4G服务器上部署上了gitlab,启动后服务器竟然死机了,远程都连不上,原因在gitlab太吃内存,我这里使用的是docker部署。启动脚本如下:本文地址:http://www.04007.cn/article/1169.html,未经许可,不得转载.
docker run -d --name gitlab13.3 -p 9001:80 -v /opt/gitlab13.3/config:/etc/gitlab -v /opt/gitlab13.3/logs:/var/log/gitlab -v /opt/gitlab13.3/data:/var/opt/gitlab gitlab/gitlab-ee:13.3.5-ee.0要减少gitLab的内存占用,需要修改其配置文件,以上面的配置启动后,gitlab的配置文件 gitlab.rb就在目录/opt/gitlab13.3/config 中。然后我们就可以开始编辑这个配置文件。进行以下修改:
1.减少数据库缓存
postgresql['shared_buffers'] = "64MB"
2.减少数据库并发数
postgresql['max_worker_processes'] = 1
3.减少sidekiq并发数
sidekiq['concurrency'] = 1
4.减少进程数
unicorn['worker_processes'] = 1
nginx['worker_processes'] = 2
5.减少超时时间
unicorn['worker_timeout'] = 10
6.减少数据库缓存
postgresql['shared_buffers'] = "64MB"
7.将worker内存上限设置小一点
unicorn['worker_memory_limit_min'] = "100 * 1 << 20"
unicorn['worker_memory_limit_max'] = "220 * 1 << 20"
8.禁用prometheus
prometheus_monitoring['enable'] = false本文地址:http://www.04007.cn/article/1169.html,未经许可,不得转载.
9关闭一些监控和性能基准相关的功能
prometheus['enable'] = false
prometheus_monitoring['enable'] = false
alertmanager['enable'] = false
node_exporter['enable'] = false
redis_exporter['enable'] = false
postgres_exporter['enable'] = false
pgbouncer_exporter['enable'] = false
gitlab_exporter['enable'] = false
grafana['enable'] = false
sidekiq['metrics_enabled'] = false
docker重载配置生效命令:
重载配置:docker exec -it gitlab容器ID gitlab-ctl reconfigure
重启:docker exec -it gitlab容器ID gitlab-ctl restart
查看各个容器内存占用:docker stats本文地址:http://www.04007.cn/article/1169.html,未经许可,不得转载.
使用以上方式处理后,服务器算是把gitlab运行起来了,但是看了一下,还是吃了不少内存,基本在1.8G内存左右。我也试着去再降低内存占用。网上还有很多可修改配置。但我发现再怎么修改配置,内存占用也没有再减少。仍然在1.7-1.8G。有些提到的可优化配置如下。我这里试过了没什么明显的效果。本文地址:http://www.04007.cn/article/1169.html,未经许可,不得转载.
# 关闭容器仓库功能
gitlab_rails['gitlab_default_projects_features_container_registry'] = false
gitlab_rails['registry_enabled'] = false
registry['enable'] = false
registry_nginx['enable'] = false
# 包仓库、依赖管理
gitlab_rails['packages_enabled'] = false
gitlab_rails['dependency_proxy_enabled'] = false
# GitLab Pages
gitlab_pages['enable'] = false
pages_nginx['enable'] = false
# Usage Statistics
gitlab_rails['usage_ping_enabled'] = false
gitlab_rails['sentry_enabled'] = false
grafana['reporting_enabled'] = false
# GitLab KAS
gitlab_kas['enable'] = false
gitlab_rails['gitlab_kas_enabled'] = false
# Terraform
gitlab_rails['terraform_state_enabled'] = false
# Kerberos 文档说EE only,但是默认值为 true
gitlab_rails['kerberos_enabled'] = false
# Sentinel
sentinel['enable'] = false
# Mattermost
mattermost['enable'] = false
mattermost_nginx['enable'] = false
# 禁用 PUMA 集群模式
puma['worker_processes'] = 0
puma['min_threads'] = 1
puma['max_threads'] = 2
# 降低后台守护进程并发数
sidekiq['max_concurrency'] = 5
# 关闭电子邮件相关功能
gitlab_rails['smtp_enable'] = false
gitlab_rails['gitlab_email_enabled'] = false
gitlab_rails['incoming_email_enabled'] = false
#关闭默认的 CI 功能
gitlab_ci['gitlab_ci_all_broken_builds'] = false
gitlab_ci['gitlab_ci_add_pusher'] = false本文地址:http://www.04007.cn/article/1169.html,未经许可,不得转载.
本文地址:http://www.04007.cn/article/1169.html 未经许可,不得转载. 手机访问本页请扫描右下方二维码.
![]() |
![]() |
手机扫码直接打开本页面 |