教你部署自己的"Github"-Gitlab
环境准备
- Centos 7
- Docker 20.10.17(其他版本也是OK的)
- Gitlab gitlab-ce:14.0.5-ce.0
写在前面
文章参考:https://soulteary.com/2021/07...
我自己用的云服务器只有4g内存,在部署了gitlab后,发现机器卡主不动了,一看内存直接来到了3.4左右。浏览器访问Gitlab页面,也是缓慢卡顿异常。遂发觉Gitlab本身带有的各种服务是很消耗内存的,于是在网上找寻如何有效解决gitlab消耗内存过大
的问题。发现了,上面参考链接中的文章。下面是我的最佳实践:
准备Docker环境
推荐教程:https://segmentfault.com/a/11...
部署Gitlab(基于Docker)
任意目录下创建一个
docker-compose.yml
文件,内容如下:# yml的格式缩进可能被打乱了,需要自己进行一下格式化(必要!) version: "3" services: gitlab: restart: always # 设置镜像源 image: gitlab/gitlab-ce:14.0.5-ce.0 container_name: gitlab hostname: gitlab.soulteary.com ports: # 映射gitlab https访问端口到主机9443 - "8444:443" # 映射gitlab http访问端口到主机9080 - "8980:80" # 映射gitlab ssh访问端口到主机9022 - "8922:22" volumes: # 挂载gitlab配置文件目录到主机/usr/local/gitlab/config - /usr/local/gitlab/config:/etc/gitlab # 挂载gitlab日志文件目录到主机/usr/local/gitlab/logs - /usr/local/gitlab/logs:/var/log/gitlab # 挂载gitlab数据目录到主机/usr/local/gitlab/data - /usr/local/gitlab/data:/var/opt/gitlab # 如果启动报错, 可以删除这个 - /usr/local/gitlab/config/gitlab.yml:/opt/gitlab/embedded/service/gitlab-rails/config/gitlab.yml environment: # 设置时区 TZ: Asia/Shanghai GITLAB_OMNIBUS_CONFIG: | external_url 'http://gitlab.soulteary.com' gitlab_rails['time_zone'] = 'Asia/Shanghai' # 关闭电子邮件相关功能 gitlab_rails['smtp_enable'] = false gitlab_rails['gitlab_email_enabled'] = false gitlab_rails['incoming_email_enabled'] = false # Terraform gitlab_rails['terraform_state_enabled'] = false # Usage Statistics gitlab_rails['usage_ping_enabled'] = false gitlab_rails['sentry_enabled'] = false grafana['reporting_enabled'] = false # 关闭容器仓库功能 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 KAS gitlab_kas['enable'] = false gitlab_rails['gitlab_kas_enabled'] = false # Mattermost mattermost['enable'] = false mattermost_nginx['enable'] = false # Kerberos gitlab_rails['kerberos_enabled'] = false sentinel['enable'] = false # GitLab Pages gitlab_pages['enable'] = false pages_nginx['enable'] = false # 禁用 PUMA 集群模式 puma['worker_processes'] = 0 puma['min_threads'] = 1 puma['max_threads'] = 2 # 降低后台守护进程并发数 sidekiq['max_concurrency'] = 5 gitlab_ci['gitlab_ci_all_broken_builds'] = false gitlab_ci['gitlab_ci_add_pusher'] = 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-compose.yml
文件同目录下面,执行下面命令,启动gitlabdocker-compose up -d
如果遇到
docker-compose
不可用的提示,请参考下面文章,进行docker-compose
的安装。https://segmentfault.com/a/11...执行命令查看,gitlab是否启动
docker ps
浏览器访问
http://主机ip:9080
默认账号为
root
,初始密码在/etc/gitlab/initial_root_password
中查看
- 遇到clone地址不对的情况
http://ftxtool.org/2021/11/20...
被 1 篇内容引用
15 声望
3 粉丝
推荐阅读
面试题-JVM
栈是线程私有的,他的生命周期与线程相同,每个方法在执行的时候都会创建一个栈帧,用来存储局部变量表,操作数栈,动态链接,方法出口等信息。局部变量表又包含基本数据类型,对象引用类型
李博帅阅读 357
Aliyun-使用Docker方式安装Jenkins
之前自己在阿里云ECS上面安装了Jekins(安装jenkins的文章),最近因为服务器中了挖矿木马于是准备重新安装一下,但是想到每次安装jenkins都要手动安装jdk、maven、docker、kubectl,感觉好麻烦,于是使用官方推荐...
Awbeci赞 2阅读 2.1k
Win10 安装Docker以及Jenkins(超级详细篇)
安装Docker下载地址:[链接] ,按照它的指引教程,无脑下一步即可。安装成功后电脑会重启。打开docker桌面端,会显示进入链接,下载WSL 安装包进行无脑安装即可。安装 Linux 内核更新包 (重启电脑)重启 Docker ...
九旬赞 3阅读 1k
引入钉钉机器人通知 Gitlab CI/CD 的构建状态
本篇是之前写的《利用 Gitlab CI/CD 实现自动构建,自动部署》的续篇。我们知道 Gitlab 的 Pipeline 中的 Job 执行成功或者失败之后,对应 Job 状态会改变为 passedorfailed,当 Job 的状态改变之后, 我们需要再...
陆同学赞 1阅读 4.6k
Redis集群容器化安装
主从复制在数据库中很常见,一般用来做读写分离,Redis中也是如此。要求只有1个Master(主节点),可以有N个slaver(从节点),而且Slaver也可以有自己的Slaver,由于这种主从的关系决定他们是在配置阶段就要指定...
KerryWu赞 2阅读 2.3k
qiankun微前端从搭建到部署大型踩坑记录片(一镜到底)
前言近两年一直会有遇到需要微前端框架的需求,同时在招聘上,微前端的需求也是挺多的,最近整理了一下之前经手过的几个qiankun微前端项目,分享给大家。
蹦擦擦赞 12阅读 808评论 8
(学习到实践)七、mongodb测试,php+nginx负载均衡的部署
从测试容器中匹配搜索得到 mongod.conf.orig,设置可以启动,网上查找配置项反不能启动,原因是配置是yaml格式!好像听说过。百度查询得到:官方配置说明,网站卡得出奇。
沧浪水阅读 2.9k
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。