gitlab搭建

回到目录

GitLab 是一个用于仓库管理系统的开源项目,使用 Git 作为代码管理工具,并在此基础上搭建起来的 Web 服务。

Gitlab 是被广泛使用的基于 git 的开源代码管理平台, 基于 Ruby on Rails 构建, 主要针对软件开发过程中产生的代码和文档进行管理, Gitlab 主要针对 group 和 project 两个维度进行代码和文档管理, 其中 group 是群组, project 是工程项目, 一个 group 可以管理多个project , 可以理解为一个群组中有多项软件开发任务, 而一个 project 中可能包含多个 branch, 意为每个项目中有多个分支, 分支间相互独立, 不同分支可以进行归并。

安装包地址:

gitlab/gitlab-ce - Packages · packages.gitlab.com

1 安装

直接安装

bash 复制代码
# 下载安装包
wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-15.9.1-ce.0.el7.x86_64.rpm --no-check-certificate

# 安装
rpm -i gitlab-ce-15.9.1-ce.0.el7.x86_64.rpm

# 编辑 /etc/gitlab/gitlab.rb 文件
# 修改 external_url 访问路径 http://<ip>:<port>
# 其他配置修改如下
gitlab_rails['time_zone'] = 'Asia/Shanghai'
puma['worker_processes'] = 2
sidekiq['max_concurrency'] = 8
postgresql['shared_buffers'] = "128MB"
postgresql['max_worker_processes'] = 4
prometheus_monitoring['enable'] = false


# 更新配置并重启
gitlab-ctl reconfigure
gitlab-ctl restart
# 重启完成后,登陆ip:port
# 用户 root 密码为/etc/gitlab/initial_root_password中密码
# 登陆后修改密码为password

docker安装

bash 复制代码
#拉去
docker pull gitlab/gitlab-ce

#运行
docker run
-d #后台运行,全称:detach
-p 443:443 #将容器内部端口向外映射
-p 29080:80 #将容器内80端口映射至宿主机29080端口,这是访问gitlab的端口
--restart always #容器自启动
--name gitlab #设置容器名称为gitlab
-v c:\gitlab\:/etc/gitlab #将容器/etc/gitlab目录挂载到宿主机/usr/local/gitlab/etc目录下,若宿主机内此目录不存在将会自动创建
-v c:\gitlab\log:/var/log/gitlab #与上面一样
-v c:\gitlab\data:/var/opt/gitlab #与上面一样
--privileged=true #让容器获取宿主机root权限

#访问
http://10.199.99.222:29080
#密码
#用户 root 密码为/etc/gitlab/initial_root_password中密码

2 配置修改

登陆后

bash 复制代码
#关闭外网头像
# Settings > General > Account and limit > 关闭Gravatar enabled

# 关闭用户注册功能
# Settings > General > Sign-up restrictions > 取消 Sign-up enabled > Save changes

# 开启 webhook 外部访问
# Settings > Network > Outbound requests > Allow requests to the local network from web hooks and services 勾选

# 设置语言为中文(全局)
# Settings > Preferences > Localization > Default language > 选择简体中文 > Save changes

# 设置当前用户语言为中文
# 右上角用户头像 > Preferences > Localization > Language > 选择简体中文 > Save changes

3 配置公钥

在本地机上操作,用于提交代码

用户名,邮箱可以用root或者重新创建一个

bash 复制代码
git config --global user.name "account name"  //用户名,建议拼音或英文
git config --global user.email "account email"  //邮箱地址
ssh-keygen -t rsa -C "account email"     //上面的邮箱地址
#将公钥放到gitlab上ssh中
cat id_rsa.pub
相关推荐
Aliex_git5 天前
Dockerfile 优化实践笔记
笔记·学习·gitlab
成为你的宁宁5 天前
Jenkins 自动化部署前后端分离若依项目全攻略:涵盖环境配置、Maven/Node.js 工具安装、GitLab 项目协同,及前后端构建、服务器推送与代码更新验证全步骤
node.js·自动化·gitlab·jenkins·maven
sunshinebo6 天前
一次 GitLab 无法启动的排查:Docker 日志把 500G 磁盘打满
docker·eureka·gitlab
何以不说话6 天前
DevOps、Git 和 GitLab
git·gitlab·devops
ZAEQgyKFs8 天前
永磁同步电机模型预测电流控制+滑模控制 [1]速度环采用滑模控制 滑模控制器采用新型趋近律与扰...
gitlab
马克Markorg9 天前
使用 Docker Compose 本地部署 GitLab 教程
docker·容器·gitlab
大尚来也12 天前
CI/CD 流水线搭建实战:GitHub Actions vs GitLab CI 2026 深度对比与选型指南
ci/cd·gitlab·github
ProgramHan13 天前
github、gitlab、gitee分别都是什么,为什么不能访问?
gitee·gitlab·github
Aliex_git15 天前
Gitlab Runner 配置实践
笔记·学习·ci/cd·gitlab
阿莫西林夹馍15 天前
GitLab的IP地址发生变更导致Runner掉线
gitlab