GitLab(史上最全GitLab安装使用文章!!!)

news2025/1/15 6:39:31

GitLab

是一个基于网络的Git仓库管理工具,是开源的。基本每个公司都会有属于自己公司内部的GitLab

官方网站:https://about.gitlab.com/

GitLab文档:https://docs.gitlab.cn/jh/install/requirements.html

安装

所需配置

这里采用Centos7进行安装,当然Ubuntu也可以

内存至少4G以上,低于4G根本不会运行起来,建议选择5G左右的内存

在ssh下安装

官方安装文档:https://gitlab.cn/install/?version=ce

1.安装依赖
sudo yum install -y curl policycoreutils-python openssh-server perl # 如果没有成功,可以重启一下虚拟机再去安装
sudo systemctl enable sshd
sudo systemctl start sshd
2.配置镜像
curl -fsSL https://packages.gitlab.cn/repository/raw/scripts/setup.sh | /bin/bash
3.开始安装
sudo EXTERNAL_URL="http://192.168.48.131" yum install -y gitlab-jh   # 192.168.48.131这个地址是你自己虚拟机的地址

Docker下安装

文档:https://docs.gitlab.cn/jh/install/docker.html

安装所需最小配置

  • 内存至少4G
  • 系统内核至少在3.10以上 uname -r 命令可查看系统内核版本
安装Docker
  1. 更新yum源

    yum update

  2. 安装依赖

    yum install -y yum-utils device-mapper-persistent-data lvm2

  3. 添加镜像

    //国外镜像
    yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
    //阿里镜像
    https://mirrors.aliyun.com/docker-ce/linux/centos/gpg
    yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
    
  4. 查看源中可使用版本

    yum list docker-ce --showduplicates | sort -r
    
  5. 安装指定版本

    yum install docker-ce-20.10.9-3.el7 #自行选择版本
    
  6. 配置开机启动项

    systemctl start docker
    systemctl enable docker
    docker version #出现以下即安装成功
    

    外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

使用容器安装Gitlab
  1. 添加容器

    docker run --detach \
      --hostname 192.168.48.132 \
      --publish 443:443 --publish 80:80 \
      --name gitlab \
      --restart always \
      --volume $GITLAB_HOME/config:/etc/gitlab:Z \
      --volume $GITLAB_HOME/logs:/var/log/gitlab:Z \
      --volume $GITLAB_HOME/data:/var/opt/gitlab:Z \
      --shm-size 256m \
      registry.gitlab.cn/omnibus/gitlab-jh:latest
    
  2. 启动容器

    docker start gitlab
    
  3. 查看已存在的容器

    docker ps -a
    
  4. 进入容器

    docker exec -it  gitlab /bin/bash
    
访问

http://192.168.48.132

如果出现网页无法显示请参考常见问题一类

当首次运行出现502错误的时候排查两个原因

  1. 虚拟机内存至少需要4g
  2. 稍微再等等刷新一下可能就好了
管理员账号登录

用户名:root

密码存在下面文件中,登录后需要改密码不然24小时之后会失效

一定要在容器内部去执行该命令!!!

cat /etc/gitlab/initial_root_password

gitlab常用命令

gitlab-ctl start                  # 启动所有 gitlab 组件;
gitlab-ctl stop                   # 停止所有 gitlab 组件;
gitlab-ctl restart                # 重启所有 gitlab 组件;
gitlab-ctl status                 # 查看服务状态;
gitlab-ctl reconfigure            # 启动服务;
vi /etc/gitlab/gitlab.rb         # 修改默认的配置文件;
gitlab-ctl tail                   # 查看日志;

常见问题

我们用gitlab-ctl start启动后,直接访问我们虚拟机地址即可,如果显示的是无法访问网页

请关闭掉你的防火墙

# 关闭
systemctl stop firewalld
# 禁止开机启动防火墙
systemctl disable firewalld

如果显示的是502,那么请稍等几分钟,因为gitlab在初始化

进去后,默认用户名是root,密码请在/etc/gitlab/initial_root_password文件红查找

除非你在安装过程中指定了自定义密码,否则将随机生成一个密码并存储在 /etc/gitlab/initial_root_password 文件中(出于安全原因,24 小时后,此文件会被第一次 gitlab-ctl reconfigure 自动删除,因此若使用随机密码登录,建议安装成功初始登录成功之后,立即修改初始密码)。使用此密码和用户名 root 登录。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

使用Git将项目上传到GitLab中

1.在gitlab中创建存放项目的仓库

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

2.创建项目并且点击新建项目

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

然后项目就建立成功了

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

2.git初始化项目

这里我们选择我们电脑上任何一个文件夹都可以,这里我选择我的SpringBoot的HelloWorld项目

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

然后我们在这个文件夹中打开我们的git bash,用git init进行初始化,这里包括后面都是Git方面的知识,不会的同学可以直接去查找Git相关知识

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

然后我们跟着刚才创建好的仓库底下的提示进行操作

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

这里的操作主要是将本地仓库关联到远程的仓库,以及重命名分支mastermain,因为gitlab的主分支已经默认叫做main

3.一定要先将我们远程仓库的默认的文件pull下来!!!

这里因为我们创建gitlab中项目仓库的时候,默认加入了一个README.md文件,所以一定要先拉取下来,千万不能直接将本地项目push上去,因为会报错

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

4.将本地所有文件push到远程仓库中

依次按照正常git提交文件形式进行add、commit、push

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

第一次push最好用git push -uf origin main命令

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

然后我们就看到我们的项目到了我们的仓库中

总结

GitLab还是很重要的,基本每个公司都有属于自己的GitLab,因为公司的代码项目很多都是机密有专利的,不能放在类似githubgitee这种公共网站上。而且对于我们程序员来说,有一个自己的代码管理库也是很方便的

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1635274.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

PHP源码_最新Ai对话系统网站源码 ChatGPT+搭建教程+前后端

基于ChatGPT开发的一个人工智能技术驱动的自然语言处理工具,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,真正像人类一样来聊天交流,甚至能完成撰写邮件、视频脚本、文案、翻译、代码,写论…

Cloudflare防火墙其他WAF设置

其他WAF设置 缓存设置 缓存设置好也可以帮助我们抵挡巨量的CC攻击。有些CC是很多IP随即攻击一个地址,如果我们的安全策略没有拦截到攻击。但是我们设置了缓存,那这些请求则会在CloudFlare边缘节点直接将缓存内容返回给请求。也达到了抗攻击的效果。 缓…

13.4.1 实验1:配置VTP

1、使用目的 通过本实验可以掌握 VTP三种模式的区别。VTP工作原理。VTP的配置和调试方法 2、实验拓扑 配置VTP的实验拓扑如下图所示 3、实验拓扑 3.1、实验准备 通过命令 delete nash:van.dat和erasestartup-config把3台交换机的配置清除干净,重启交换机&#…

基于深度学习的3D目标检测与跟踪

目标检测和跟踪对于自动驾驶来说是至关重要和基础的任务,旨在从场景中识别和定位出那些预定义类别的对象。在所有形式的自动驾驶数据中,3D点云学习引起了越来越多的关注。目前,有许多用于3D目标检测的深度学习方法。然而,鉴于点云…

MySQL数据库——事务操作-begin-commit-rollback

schooldb库——utf8字符集——utf8_general_ci排序规则 先创建库,再去使用下列的DDL语句。 DDL CREATE TABLE student (id int(11) NOT NULL AUTO_INCREMENT COMMENT 学号,createDate datetime DEFAULT NULL COMMENT 创建时间,modifyDate datetime DEFAULT NULL …

stm32单片机开发一、中断之外部中断实验

stm32单片机的外部中断和定时器中断、ADC中断等都由stm32的内核中的NVIC模块控制,stm32的中断有很多中,比如供电不足中断,当供电不足时,会产生的一种中断,这么多中断如果都接在CPU上,或者说CPU去处理&#…

【LAMMPS学习】八、基础知识(5.2)粒度模型

8. 基础知识 此部分描述了如何使用 LAMMPS 为用户和开发人员执行各种任务。术语表页面还列出了 MD 术语,以及相应 LAMMPS 手册页的链接。 LAMMPS 源代码分发的 examples 目录中包含的示例输入脚本以及示例脚本页面上突出显示的示例输入脚本还展示了如何设置和运行各…

蓝网科技临床浏览系统 deleteStudy SQL注入漏洞复现(CVE-2024-4257)

0x01 产品简介 蓝网科技临床浏览系统是一个专门用于医疗行业的软件系统,主要用于医生、护士和其他医疗专业人员在临床工作中进行信息浏览、查询和管理。 0x02 漏洞概述 蓝网科技临床浏览系统 deleteStudy接口处SQL注入漏洞,未经身份验证的恶意攻击者利用 SQL 注入漏洞获取…

AI大模型探索之路-训练篇8:大语言模型Transformer库-预训练流程编码体验

系列篇章💥 AI大模型探索之路-训练篇1:大语言模型微调基础认知 AI大模型探索之路-训练篇2:大语言模型预训练基础认知 AI大模型探索之路-训练篇3:大语言模型全景解读 AI大模型探索之路-训练篇4:大语言模型训练数据集概…

Codigger数据篇(下):数据安全的全方位保障

在数字化浪潮中,数据已成为现代企业的核心财富。Codigger作为领先的数据服务平台,深知数据安全对于用户的重要性,因此在深挖数据价值的同时,我们始终坚守数据安全防线。 一、双重加密技术保障 Codigger平台运用先进的加密通信和…

【C/C++】动态内存管理(C:malloc,realloc,calloc,free || C++:new,delete)

🔥个人主页: Forcible Bug Maker 🔥专栏: C | | C语言 目录 前言C/C内存分布C语言中的动态内存管理:malloc/realloc/realloc/freemallocrealloccallocfree C中的动态内存管理:new/deletenew和delete操作内…

android studio 编译一直显示Download maven-metadata.xml

今天打开之前的项目的时候遇到这个问题:android studio 编译一直显示Download maven-metadata.xml, AI 查询 报错问题:"android studio 编译一直显示Download maven-metadata.xml" 解释: 这个错误通常表示Android Studio在尝试从Maven仓库…

用Python Turtle画一个中国结

中国结,作为中华民族传统文化的象征之一,以其独特的编织技艺和深厚的文化内涵,深受人们喜爱。今天,我们就来用Python的turtle模块,尝试绘制一个充满韵味的中国结。 我们先来看看整个中国结生成的过程: 中国…

机器学习 | 准确率、召回率、精准率、特异度傻傻分不清?ROC曲线怎么看?一篇文章帮你搞定

一、真正类、假负类、假正类与真负类 二、准确率、召回率、精准率、特异度与假正率 1. 准确率 (Accuracy) 准确率表明成功预测(预测为负或为正)的结果占总样本的百分比。 准确率 , 2. 召回率/查全率/灵敏度/真正率(Recall&a…

C语言进阶|双链表

✈链表的分类 链表的结构非常多样,以下情况组合起来就有8种(2x22)链表结构: 虽然有这么多的链表的结构,但是我们实际中最常用还是两种结构:单链表和双向带头循环链表 1.无头单向非循环链表:结构简单&…

springboot基于SpringBoot的网上订餐系统开题报告+1w字文档+ppt

项目演示视频: 【源码免费送】基于SpringBoot的网上订餐系统录像 摘 要 随着我国经济的飞速发展,人们的生活速度明显加快,在餐厅吃饭排队的情况到处可见,近年来由于新兴IT行业的空前发展,它与传统餐饮行业也进行了新旧的结合&…

实验八智能手机互联网程序设计(微信程序方向)实验报告

请在上一次实验的基础之上完成“手机快速注册”页面、“企业用户注册”页面,并实现点击手机快速注册和企业用户注册后转跳至该页面在“手机快速注册”页面,输入框内输入内容并失去焦点后,下方的按钮会变化 在企业用户注册页面,用户…

Anomalib:用于异常检测的深度学习库!

大家好,今天给大家介绍了一个用于无监督异常检测和定位的新型库:anomalib,Github链接:https://github.com/openvinotoolkit/anomalib 简介 考虑到可重复性和模块化,这个开源库提供了文献中的算法和一组工具,以通过即插即用的方法设计自定义异常检测算法。 Anomalib 包…

# 从浅入深 学习 SpringCloud 微服务架构(七)Hystrix(1)

从浅入深 学习 SpringCloud 微服务架构(七)Hystrix(1) 一、Hystrix:基于 RestTemplate 的熔断配置 1、Hystrix 介绍: 1)Hystrix 是由 Netflix 开源的一个延迟和容错库, 用于隔离访…

Web3的可持续性:构建环境友好的去中心化系统

引言 随着全球对可持续发展和环境问题的日益关注,Web3技术作为一种新型的互联网模式,也开始受到社区和开发者的关注。但很少有人关注到Web3对环境可持续性的潜在影响。本文将探讨Web3如何构建一个环境友好的去中心化系统,以及这如何促进一个…