Git学习笔记(第10章):自建代码托管中心GitLab

目录

10.1 简介

10.2 安装

10.2.1 准备服务器

10.2.2 准备安装包

10.2.3 编写安装脚本

10.2.4 初始化GitLab服务

10.2.5 启动GitLab服务

10.2.6 使用浏览器访问GitLab

10.3 创建远程库

10.4 本地库推送到远程库


10.1 简介

        GitLab是由GitLab Inc.开发,使用MIT许可证的基于网络的Git仓库管理工具,且具有wiki和issue跟踪功能。使用Git作为代码管理工具,并在此基础上搭建起来的web服务。

        GitLab由乌克兰程序员DmitriyZaporozhets和ValerySizov开发,它使用Ruby语言写成。后来,一些部分用Go语言重写。截止2018年5月,该公司约有290团队成员,以及2000多名开源贡献者。GitLab被IBM,Sony,JülichResearchCenter,NASA,Alibaba,Invincea,O’ReillyMedia,Leibniz-Rechenzentrum(LRZ),CERN,SpaceX等组织使用。

10.2 安装

官网地址:The DevSecOps Platform | GitLab

安装说明:https://about.gitlab.com/installation/

Gitlab-ee:企业旗舰版

Gitlab-ce:社区免费版

10.2.1 准备服务器

        此部分需要具备虚拟机搭建的相关知识,可参考《Linux学习笔记》(见主页)。

  • Step1: 准备一个系统为CentOS7以上版本的服务器(此处克隆虚拟机

  • Step2:开启并登录虚拟机gitlab-server
    • 1:克隆虚拟机gitlab-server与模板虚拟机hadoop100的配置完全相同(包括账号和密码)
    • 2:此处 登录root账号
  • Step3:关闭防火墙
    • 临时关闭防火墙:systemctl stop firewalld
    • 开机启动时关闭防火墙:systemctl disable firewalld.service
    • 参考《Lin ux学习笔记》4.7 案例实操:防火墙

  • Step4:修改克隆机的主机名和IP地址
    • 主机名gitlab-server
      • hostnamectl set-hostname gitlab-server
    • IP地址192.168.171.200
      • cd /etc/sysconfig/network-scripts
      • vim ifcfg-ens33
    • 参考《Linux学习笔记》三、网络配置

  • Step5:重启服务器 reboot
  • Step6:配置windows的hosts映射文件
    • Step6.1:进入C:\Windows\System32\drivers\etc 路径

  • Step6.2:拷贝hosts文件到桌面
  • Step6.3:打开桌面hosts文件,并添加相应内容

  • Step6.4将桌面hosts 文件覆盖C:\Windows\System32\drivers\etc 路径hosts 文件
    • 参考《Linux学习笔记》3.4 配置hosts映射文件

10.2.2 准备安装包

        使用yum进行在线安装gitlab-ce时,需要下载几百M的安装文件,非常耗时,对网络的要求较高。因此,最好提前把所需RPM包下载到本地,再使用rpm进行离线安装

  • Step1:下载安装包
    •   下载地址:https://packages.gitlab.com/gitlab/gitlabce/packages/el/7/gitlab-ce-13.10.2-ce.0.el7.x86_64.rpm

  • Step2:上传安装包到服务器/opt/module目录下即可。

10.2.3 编写安装脚本

        Gitlab的安装步骤比较繁琐,因此我们可以参考官网编写gitlab的安装脚本。

  • Step1:编写安装脚本
[root@gitlab-server module]# vim gitlab-install.shsudo rpm -ivh /opt/module/gitlab-ce-13.10.2-ce.0.el7.x86_64.rpmsudo yum install -y curl policycoreutils-python openssh-server croniesudo lokkit -s http -s sshsudo yum install -y postfixsudo service postfix startsudo chkconfig postfix oncurl https://packages.gitlab.com/install/repositories/gitlab/gitlabce/script.rpm.sh | sudo bashsudo EXTERNAL_URL="http://gitlab.example.com" yum -y install gitlabce
  • Step2:给脚本增加执行权限
[root@gitlab-server module]# chmod +x gitlab-install.sh[root@gitlab-server module]# ll总用量 403104-rw-r--r--. 1 root root 412774002 4 月 7 15:47 gitlab-ce-13.10.2-ce.0.el7.x86_64.rpm-rwxr-xr-x. 1 root root 416 4 月 7 15:49 gitlab-install.sh

  • Step3:执行脚本,开始安装gitlab-ce
    • 注:一定要保证服务器可以上网(脚本涉及到yum命令在线安装)
[root@gitlab-server module]# ./gitlab-install.sh警告:/opt/module/gitlab-ce-13.10.2-ce.0.el7.x86_64.rpm: 头 V4RSA/SHA1 Signature, 密钥 ID f27eab47: NOKEY准备中... #################################[100%]正在升级/安装...1:gitlab-ce-13.10.2-ce.0.el7################################# [100%]。 。 。 。 。 。

10.2.4 初始化GitLab服务

[root@gitlab-server module]# gitlab-ctl reconfigure。 。 。 。 。 。Running handlers:Running handlers completeChef Client finished, 425/608 resources updated in 03 minutes 08secondsgitlab Reconfigured!

10.2.5 启动GitLab服务

  • 启动gitlab服务:gitlab-ctl start
  • 停止gitlab服务:gitlab-ctl stop
[root@gitlab-server module]# gitlab-ctl startok: run: alertmanager: (pid 6105) 89sok: run: gitaly: (pid 5996) 91sok: run: gitlab-exporter: (pid 5988) 91sok: run: gitlab-workhorse: (pid 5958) 92sok: run: grafana: (pid 6128) 89sok: run: logrotate: (pid 5312) 182sok: run: nginx: (pid 5275) 188sok: run: node-exporter: (pid 5982) 92sok: run: postgres-exporter: (pid 6120) 89sok: run: postgresql: (pid 4909) 243sok: run: prometheus: (pid 6083) 91sok: run: puma: (pid 5133) 206sok: run: redis: (pid 4676) 255sok: run: redis-exporter: (pid 5990) 91sok: run: sidekiq: (pid 5164) 200s

10.2.6 使用浏览器访问GitLab

  • Step1:访问GitLab服务器
    • 方式1:IP地址访问(默认端口为80,可不写) 192.168.171.200

  • 方式2:主机名访问 http://gitlab-server(必须配置windows的hosts映射文件)
    • 注:此处只能使用http,不能使用https

  • Step2:设置root账户的密码
    • 首次登陆之前,需要修改下GitLab提供的root账户的密码
    • 密码要求:8位以上,包含大小写子母和特殊符号

  • Step3:使用修改后的密码登录GitLab

10.3 创建远程库

  • Step1:New Project → Create blank project

  • Step2:输入远程库名称

  • Step3:查看效果

10.4 本地库推送到远程库

  • Step1:添加远程仓库(即本地仓库需要关联哪一个远程仓库)
    • 注:gitlab 网页上复制过来的连接是http://gitlab.example.com/root/git-vscode.git,需要手动修改为:http://gitlab-server/root/git-vscode.git

  • Step2:本地库推送到远程库

  • Step3:查看效果

        只要GitLab的远程库连接定义好以后,对GitLab远程库进行pull和clone的操作和Github和码云一致,此处不再赘述。 

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

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

相关文章

Nacos服务注册源码:客户端

入口 我们就拿nacos自己example下的NamingExample来做测试 public class NamingExample {public static void main(String[] args) throws NacosException, InterruptedException {Properties properties new Properties();properties.setProperty("serverAddr", …

39、FlatFormer:MIT+交大+清华共同提出,更加高效的Transformer[无绳蹦极第一人!]

本文由麻省理工学院、上海交通大学、清华大学于2023年7月14日发表于Arxiv的<Computer Science> 论文&#xff1a; [2301.08739] FlatFormer: Flattened Window Attention for Efficient Point Cloud Transformer (arxiv.org) 代码&#xff1a; github.com Abstract&a…

接续奋斗四十载 勇毅前行向未来 2024食品产业高质量发展论坛暨《中国食品报》创刊40周年研讨会在京举行

四十年春华秋实&#xff0c;四十年砥砺奋进。《中国食品报》从改革开放之初的春天里走来&#xff0c;以笔为媒&#xff0c;勇担道义&#xff0c;从拯救中华传统老字号品牌开始&#xff0c;为我国食品产业发展奔走疾呼&#xff0c;为提升我国食品企业融入国际化潮流、提升国际竞…

联合 Maxlinear 迈凌 与 Elitestek 易灵思 - WPI 世平推出基于 FPGA 芯片的好用高效电源解决方案

近期 WPI 世平公司联合 Maxlinear 迈凌电源产品搭配 Elitestek 易灵思 FPGA 共同合作推出基于 FPGA 芯片的好用高效电源解决方案。 Elitestek 易灵思 FPGA 核心产品有 2 大系列 : Trion 系列与钛金系列。Trion 系列主要特点是 : 1. 40nm 工艺 2. 超低功耗 ( 可低至竞争对手的 …

[ESXi 8]安装centos7

文章目录 创建虚拟机创建虚拟机选择centos7选择存储选择镜像文件上传ios镜像文件 安装即将完成 启动虚拟机自动获取ip设置root密码安装成功 创建虚拟机 创建虚拟机 选择centos7 选择存储 选择镜像文件 上传ios镜像文件 如图显示上传进度&#xff0c;上传完毕之后&#xff0c;将…

网络协议与攻击模拟_11DHCP欺骗防护

开启DHCP 监听 ip dhcp snooping 指定监听vlan ip dhcp snooping vlan 1 由于开启监听后&#xff0c;交换机上的接口就全部变成非信任端口&#xff0c; 非信任端口会拒绝DHCP报文&#xff0c;会造成正常的DHCP请求和响应都无法完成。 现在是请求不到IP地址的&#xff0c;…

JS图片二维码识别

前言 js识别QR图片&#xff0c;基于jsQR.js 代码 <!DOCTYPE html> <html> <head><meta charset"utf-8" /><title>图片二维码识别</title><script src"https://cdn.bootcss.com/jquery/3.4.1/jquery.min.js">…

vector(顺序表)

vector容器就相当于一个顺序表&#xff0c;只不过他把一些功能分装到了容器里 常用接口及语法 构造&#xff1a;vectro<数据类型> 对象名 输出&#xff1a;和顺序表一样我们需要遍历打印&#xff0c;而不能直接用cout打印 对象.push_back () 尾插 对象.pop_back() 尾删…

【Java-JDK】JDK 的安装与环境变量的配置:Windows Linux

【Java-JDK】JDK的安装与环境变量的配置&#xff1a;Windows & Linux 1&#xff09;Windows安装JDK1.1.下载JDK1.1.安装JDK1.2.JDK环境配置1.3.验证环境变量是否配置成功 2&#xff09;Linux安装JDK2.1.下载JDK2.2.安装JDK2.3.JDK环境配置2.4.验证环境变量配置是否成功 1&a…

Java-并发高频面试题

1.说一下你对Java内存模型&#xff08;JMM&#xff09;的理解&#xff1f; 其实java内存模型是一种抽象的模型&#xff0c;具体来看可以分为工作内存和主内存。 JMM规定所有的变量都会存储再主内存当中&#xff0c;再操作的时候需要从主内存中复制一份到本地内存&#xff08;c…

Utreexo:优化Bitcoin UTXO集合的基于哈希的动态累加器

1. 引言 前序博客&#xff1a; Utreexo&#xff1a;比特币UTXO merkle tree proof以节约节点存储空间 MIT Digital Currency Initiative 的 Thaddeus Dryja 2019年论文 Utreexo: A dynamic hash-based accumulator optimized for the Bitcoin UTXO set。 开源代码实现见&…

KubeSphere 核心实战之四【在kubesphere平台上部署Ruoyi-cloud项目】(实操篇 4/4)

**《KubeSphere 核心实战系列》** KubeSphere 核心实战之一&#xff08;实操篇 1/4&#xff09; KubeSphere 核心实战之二&#xff08;实操篇 2/4&#xff09; KubeSphere 核心实战之三&#xff08;实操篇 3/4&#xff09; KubeSphere 核心实战之四&#xff08;实操篇 4/4&…

前端颜料盘??

前端颜料盘&#xff1f;&#xff1f; 一、原生颜料盘 <input type"color" placeholder"选择颜色">二、第三方开源库 Pickr&#xff1a; GitHub: https://github.com/Simonwep/pickr官方网站: https://simonwep.github.io/pickr/Pickr 是一个轻量级…

产品说明书怎么做?有模板吗?

产品说明书是一种重要的工具&#xff0c;它向消费者提供有关产品的详细信息和使用指南。一个好的产品说明书不仅可以帮助消费者正确地使用产品&#xff0c;还可以增加产品的销售量和用户满意度。那么&#xff0c;如何制作一份优秀的产品说明书呢&#xff1f;是否有现成的模板可…

ubantu操作hbase

到firefox中按照网站找以下文件进行下载 新建一个窗口启动节点 下载完成则回到下载目录 如果下载慢也可以将文件放在share中&#xff0c;然后拷贝到当前目录 进入到root 然后回到hadoop 解压到/usr/local 进入到local&#xff0c;将hbase改名 修改权限 配置环境变量 执行 回到h…

专业120+总分400+宁波大学912信号与系统考研经验电子信息通信集成电路光电

今年考研顺利上岸&#xff0c;专业课912信号与系统120&#xff0c;总分400&#xff0c;被宁波大学录取&#xff0c;回望这一年的复习有过迷茫和犹豫&#xff0c;也有过坚持和坚强&#xff0c;总结一下自己的复习得失&#xff0c;希望对大家复习有所帮助。专业课&#xff1a; 前…

何为蓝海项目?抖音老隋分享的temu项目算吗?

在当今快速发展的商业环境中&#xff0c;蓝海项目成为了人们关注的焦点。那么&#xff0c;究竟什么是蓝海项目?抖音老隋分享的temu项目又是否算得上一个蓝海项目呢?本文将就此进行探讨。 首先&#xff0c;让我们明确什么是蓝海项目 蓝海项目通常指的是那些市场潜力巨大、竞争…

转盘寿司 - 华为OD统一考试

OD统一考试&#xff08;C卷&#xff09; 分值&#xff1a; 100分 题解&#xff1a; Java / Python / C 题目描述 寿司店周年庆&#xff0c;正在举办优惠活动回馈新老用户。 寿司转盘上总共有 n 盘寿司&#xff0c; prices[i] 是第 i 盘寿司的价格。 如果客户选择了第 i 盘寿…

【游戏服务器部署】幻兽帕鲁服务器一键部署保姆级教程,游戏私服还是自己搭建的香

在帕鲁的世界&#xff0c;你可以选择与神奇的生物「帕鲁」一同享受悠闲的生活&#xff0c;也可以投身于与偷猎者进行生死搏斗的冒险。帕鲁可以进行战斗、繁殖、协助你做农活&#xff0c;也可以为你在工厂工作。你也可以将它们进行售卖&#xff0c;或肢解后食用。—幻兽帕鲁 想要…

ThinkPHP5.0.0~5.0.23反序列化利用链分析

本次测试环境仍然是ThinkPHP v5.0.22版本&#xff0c;我们将分析其中存在的一条序列化链。 一道CTF题 这次以一道CTF题作为此次漏洞研究的开头。题中涉及PHP的死亡绕过技巧&#xff0c;是真实环境中存在的情况。 $payload; $filename$payload.468bc8d30505000a2d7d24702b2cda…