ci/cd之搭建私有git仓库gitlab(代码片段)

Tuki_a Tuki_a     2022-12-07     385

关键词:

私有仓库Gitlab

Gitlab简介

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

Gitlab官方文档:https://docs.gitlab.com/

CI/CD

  • 持续集成
    考虑一个应用程序,它的代码存储在 GitLab 的 Git 存储库中。开发人员每天多次推送代码更改。对于每次推送到存储库,可以创建一组脚本来自动构建和测试您的应用程序。这些脚本有助于减少在应用程序中引入错误的机会。这种做法称为持续集成。提交给应用程序的每个更改,甚至是开发分支,都会自动且连续地构建和测试。这些测试可确保更改通过您为应用程序建立的所有测试、指南和代码合规性标准。GitLab 本身就是一个使用持续集成作为软件开发方法的项目示例。对于对项目的每次推送,都会针对代码运行一组检查。

  • 持续交付
    持续交付是超越持续集成的一步。每次将代码更改推送到代码库时,不仅会构建和测试应用程序,还会持续部署应用程序。但是,通过持续交付,可以手动触发部署。持续交付会自动检查代码,但需要人工干预以手动和战略性地触发更改的部署。

  • 持续部署
    持续部署 是超越持续集成的另一个步骤,类似于持续交付。不同之处在于,不是手动部署应用程序,而是将其设置为自动部署。不需要人工干预。

  • GitLab CI/CD
    GitLab CI/CD是 GitLab 的一部分,用于所有持续方法(持续集成、交付和部署)。使用 GitLab CI/CD,可以测试、构建和发布软件,而无需第三方应用程序或集成。

Gitlab CI&CD官方介绍:https://docs.gitlab.com/ee/ci/introduction/index.html

安装Gitlab

推荐使用国内镜像站点下载软件https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/,注意官方建议内存至少4G

[root@server1 ~]# yum install -y gitlab-ce-14.1.2-ce.0.el7.x86_64.rpm		#我们暂时没有那么多的需求,安装ce社区版即可,ee是企业版

安装好后会显示如下界面
编辑配置文件

ip改为本机

重载服务(时间长)

[root@server1 gitlab]# gitlab-ctl reconfigure
#其他基本命令
	gitlab-ctl start # 启动所有 gitlab 组件
	gitlab-ctl stop # 停止所有 gitlab 组件
	gitlab-ctl restart # 重启所有 gitlab 组件
	gitlab-ctl status # 查看服务状态
	gitlab-ctl tail# 重载服务

结束之后默认root的密码会存放在/etc/gitlab/initial_root_password
网页访问192.168.122.11
密码要到文件中去看,复制下来

[root@server1 gitlab]# vim  /etc/gitlab/initial_root_password

使用root用户登录

设置中文


重设密码,密码不能少于8个字符

如果root密码忘记了,可以按如下步骤重设密码

[root@server1 ~]# gitlab-rails console -e production
user = User.where(username:"root").first
user.password="12345678"
user.password_confirmation="12345678"
user.save!
quit


查看gitlab状态可以看到gitlab是自带普罗米修斯监控的,node-exporter是普罗米修斯监控服务器的组件;还有logrotate 程序,logrotate是一个日志文件管理工具。用于分割日志文件,删除旧的日志文件,并创建新的日志文件,起到“转储”作用。

Gitlab使用

添加ssh密钥,并复制

[root@server1 gitlab]# ssh-keygen
[root@server1 gitlab]# cd 
[root@server1 ~]# cd .ssh/
[root@server1 .ssh]# ls
id_rsa  id_rsa.pub
[root@server1 .ssh]# cat id_rsa.pub 
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDSA3zOJdAeCPVZtLj/dM63oPk2xvtXCLieBcZjl7iGLddnGPkO33bFRGfx2NWfXZh5aEblFjYuW0jM+mB2UB/TWE9a9DRlyWWLDz3A5maVqa73yA22Z6dOLu/ujMF5tREJ6r0ZWLoBR79iUTmy7Ts3mYpuXMo8qLOphkA1MXMa17+VNFwkOYLpwUqDHeA+TAIvm4dJrVPWpf38dBevnN325veT41J2B7NjLqPPgekR9BPFc0zaylymoU/Ax9+8OoaFUGXLCEczEwQXYKzjdmtO1OAykb2oLzlRsf5TN5DdmPuqo8FCPfTfR2lAtQfuIFrX1ryTB4itAhcHEnqS87Yf root@server1


粘贴到gitlab里
如下添加好了
新建一个项目
设为私有的项目

现在可以上传本地仓库或者克隆gitlab的仓库

使用如下命令可以克隆,推送本地仓库到远程就不演示了,和gitee一样

ci/cd持续集成与持续交付(上)--------git,gitee远程共有仓库和gitlab私有仓库,jenkins(代码片段)

目录一、git工具使用git简介Git工作流程Git的四个核心概念git使用忽略隐藏文件移除文件git命令补充二、git结合远程共有仓库github/gitee三、远程私仓库gitlab搭建一、jenkins持续集成1jenkins简介2jenkins安装3.jenkins插件安装4.jenkins项目创... 查看详情

ci/cd之jenkins+gitlab(代码片段)

...续集成环境(1)实验环境(2)实验步骤-搭建Gitlab(100.202)-Gitlab的使用-关闭gitlab注册功能-配置gitlab邮件报警-创建一个新群组-创建一个新账户-把新创建的用户加入组-创建一个新项目-搭建Jenkins(100.20... 查看详情

ci/cd之推送本地仓库到远程git仓库克隆远程git仓库(使用gitee)(代码片段)

克隆远程Git仓库推送本地仓库到远程Git仓库克隆远程仓库到gitee官网(github会很慢,建议用gitee)注册一个账号https://gitee.com/创建一个开源仓库仓库名称随意起有两种连接本地方式,https需要在每次连接的时候输入g... 查看详情

ci/cd之推送本地仓库到远程git仓库克隆远程git仓库(使用gitee)(代码片段)

克隆远程Git仓库推送本地仓库到远程Git仓库克隆远程仓库到gitee官网(github会很慢,建议用gitee)注册一个账号https://gitee.com/创建一个开源仓库仓库名称随意起有两种连接本地方式,https需要在每次连接的时候输入g... 查看详情

gitlab-ci/cd(代码片段)

Gitlab-Runner自动构建服务器搭建1这里讲到的gitlab仓库指的是https://gitlab.com/,自建gitlab仓库也基本相同。项目的构建打包过程相对比较消耗系统性能,所以gitlab将这部分任务都交给了gitlab-runner来做,因为gitlab-runner可以部署到不同... 查看详情

springboot+git+jenkins+docker实现ci/cd

...有很多选择,比如github、码云(本次使用)、Coding以及自己搭建的gitlab 查看详情

还在用jenkins?试试gitlab的ci/cd功能吧(代码片段)

...Gitlab,如果还不知道怎么安装,可以参考《10分钟搭建自己的Git仓库》。为了避免一些不必要的麻烦,我们可以使用如下命令运行Gitlab服务,这里需要注意的是添加了hostname属性,这样我们就可以通过域名来访... 查看详情

linux搭建gitlab私有仓库,并内网穿透实现公网访问(代码片段)

...项目,使用Git作为代码管理工具,并在此基础上搭建起来的Web服务。Gitlab是被广泛使用的基于git的开源代码管理平台,基于RubyonRails构建,主要针对软件开发过程中产生的代码和文档进行管理,Gitlab主要针对group和project两个维... 查看详情

如何使用gitlab和rancher构建ci/cd流水线–part1

...组、问题跟踪、wiki和片段,除此之外还有公有、内部和私有存储库。GitLab强大之处在于,它包含强大的持续集成(CI)引擎和Docker容器镜像仓库,让使用者从开发到发布都使用相同的实用工具。它还有两个更强大的开源软件实用... 查看详情

ci/cd之初识git(代码片段)

...xff09;介绍Git项目的三个阶段Git命令集语法Git的使用获取Git仓库通常有两种方式:将项目导入Git设置忽略文件版本升级删除文件+版本回退Git简介Git是一个免费的开源分布式版本控制系统,旨在快速高效地处理从小到大的... 查看详情

ci/cd之初识git(代码片段)

...xff09;介绍Git项目的三个阶段Git命令集语法Git的使用获取Git仓库通常有两种方式:将项目导入Git设置忽略文件版本升级删除文件+版本回退Git简介Git是一个免费的开源分布式版本控制系统,旨在快速高效地处理从小到大的... 查看详情

ci/cd之jenkins(代码片段)

...nkins安装安装jenkins插件安装中文插件安装流水线插件安装gitlab插件jenkins和gitlab联动jenkins轮询检查gitlab代码变更使用webhook实时检查gitlab代码变更推送dockerfile文件自动构建镜像新增agent节点jenkins用户管理CI/CD简介CI(Continuousintegration... 查看详情

ci/cd之jenkins(代码片段)

...nkins安装安装jenkins插件安装中文插件安装流水线插件安装gitlab插件jenkins和gitlab联动jenkins轮询检查gitlab代码变更使用webhook实时检查gitlab代码变更推送dockerfile文件自动构建镜像新增agent节点jenkins用户管理CI/CD简介CI(Continuousintegration... 查看详情

docker下搭建gitlab

...统的开源项目。使用Git作为代码管理工具,并在此基础上搭建起来的web服务。Github是公共的git仓库,而Gitlab适合于搭建企业内部私有git仓库官网:https://about.gitlab.com/https://github.com/gitlabhq/gitlabhq截止本文创建时间,GitLab最新版本... 查看详情

gitlab-ci-runner安装(代码片段)

...(ContinuousDelivery)持续部署个人理解本地开发代码,提交远程仓库仓库接收到提交操作,进入持续集成,包括编译,自动化测试(CI)编译测试成功后,部署到线上服务器(CD)gitlab-runner介绍gitlab提供了一个持续集成的服务,如果你在项目仓... 查看详情

gitlab搭建与基本使用(代码片段)

...这个问题,可以在上面创建免费的私人repo。二、gitlabserver搭建过程yuminstall 查看详情

还在用jenkins?试试gitlab的ci/cd功能吧(代码片段)

...,并且操作更加简单。如果你也正在使用Gitlab作为Git仓库的话,不妨试试它的CI/CD功能。一、安装通过Gitlab的CI/CD功能实现自动化部署,我们需要安装Gitlab、GitlabRunne 查看详情

如何为私有 GKE 集群启用 Gitlab CI/CD?

】如何为私有GKE集群启用GitlabCI/CD?【英文标题】:HowtoenableGitlabCI/CDforPrivateGKEcluster?【发布时间】:2020-07-1307:08:32【问题描述】:我想设置GitlabCI/CD的AutoDevops功能,为此我正在尝试将现有的kubernetes集群设置为我的环境。但是,Gi... 查看详情