基于GitLab+Jenkin-CICD方案实践
前言
笔录于2022-
- 清华源:清华大学开源软件镜像站 | Tsinghua Open Source Mirror
版本介绍: CE(社区版)、EE(企业版)
安装Gitlab:
[root@gitlab-service ~]# yum install wget -y
[root@gitlab-service ~]# wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-14.1.0-ce.0.el7.x86_64.rpm --no-check-certificate
[root@gitlab-service ~]# yum install gitlab-ce-14.1.0-ce.0.el7.x86_64.rpm -y
Installing : gitlab-ce-14.1.0-ce.0.el7.x86_64 1/1
It looks like GitLab has not been configured yet; skipping the upgrade script. *. *.
*** ***
***** *****
.****** *******
******** ********
,,,,,,,,,***********,,,,,,,,,
,,,,,,,,,,,*********,,,,,,,,,,,
.,,,,,,,,,,,*******,,,,,,,,,,,,
,,,,,,,,,*****,,,,,,,,,.
,,,,,,,****,,,,,,
.,,,***,,,,
,*,. _______ __ __ __
/ ____(_) /_/ / ____ _/ /_
/ / __/ / __/ / / __ `/ __ \
/ /_/ / / /_/ /___/ /_/ / /_/ /
\____/_/\__/_____/\__,_/_.___/ Thank you for installing GitLab!
GitLab was unable to detect a valid hostname for your instance.
Please configure a URL for your GitLab instance by setting `external_url` #注意 GitLab 无法检测到实例的有效主机名,需要修改 URL 路径在 /etc/gitlab/gitlab.rb
configuration in /etc/gitlab/gitlab.rb file.
Then, you can start your GitLab instance by running the following command:
sudo gitlab-ctl reconfigure
[root@gitlab-service ~]# vim /etc/gitlab/gitlab.rb
...
external_url 'http://20.20.10.193' #本机IP
[root@server-hub ~]# gitlab-ctl reconfigure #修改完后,使用gitlab-ctl reconfigure重新加载配置gitlab使配置生效,加载需要一会
[root@server-hub ~]# gitlab-ctl start #启动
[root@server-hub ~]# gitlab-ctl status #查看状态
GitLab常用组件
nginx #静态Web服务器
gitlab-shell #用于处理Git命令
gitlab-workhorse #轻量级的反向代理服务器
logrotate #日志文件管理工具
postgresql #数据库
redis #缓存数据库
unicorn #GitLab Rails应用是托管在这个服务器上面的
GitLab服务参数
常用参数如下:
/opt/gitlab #应用代码和相应的依赖程序
/etc/gitlab #配置文件目录
/etc/gitlab/gitlab.rb #gitlab配置文件
/var/log/gitlab #gitlab各个组件产生的日志/var/opt/gitlab/git-data/repositories #库默认存储目录
/var/opt/gitlab/backups/ #备份文件生成的目录
/var/opt/gitlab/gitlab-rails/etc/unicorn.rb #unicorn配置文件
/var/opt/gitlab/nginx/conf/gitlab-http.conf #nginx配置文件
GitLab常用命令
gitlab-ctl start #启动全部服务(也可指定单个服务)
gitlab-ctl restart #重启全部服务(也可指定单个服务)
gitlab-ctl stop #停止全部服务(也可指定单个服务)
gitlab-ctl reconfigure #使配置文件生效(修改主配置文件后使用)
gitlab-ctl show-config #验证配置文件
gitlab-ctl uninstall #卸载gitlab(保留数据)
gitlab-ctl cleanse #删除所有数据,从新开始
gitlab-ctl tail <service name> #查看服务的日志
登录GitLab
浏览器访问GitLab服务器地址:http://server_ip
默认用户名:root
root初始密码所在文件:cat /etc/gitlab/initial_root_password


GitLab 部署完成:

修改密码
部署完成后,下次登录还是需要看密码配置文件,所以一般部署完成后第一件事就是改密码,密码不验证复杂度,长度需满足8位:
修改Root密码

基于GitLab+Jenkin-CICD方案实践的更多相关文章
- 基于Gitlab的CICD流程
本片文章主要初步介绍什么是CICD流程,并且把整个流程进行拆分理解整个流程的跑通过程. 1.CICD概述 什么是CICD呢? 简单的说CICD就是持续集成自动构建自动测试自动部署. 从概念上就可以看出 ...
- 基于 Istio 的灰度发布架构方案实践之路
作者:京东物流 赵勇萍 1. 背景介绍 灰度发布,又名金丝雀发布,是指能够平滑过渡的一种发布方式.基于系统稳定性和快速业务迭代的综合考虑,业务应用开发团队采取了新版本服务灰度上线的方式,即新版本服务并 ...
- 基于nginx的频率控制方案思考和实践
基于nginx的频率控制方案思考 标签: 频率控制 nginx 背景 nginx其实有自带的limit_req和limit_conn模块,不过它们需要在配置文件中进行配置才能发挥作用,每次有频控策略的 ...
- 基于AWS的自动化部署实践
过年前,我给InfoQ写了篇文章详细介绍我们团队在过去4年基于AWS的自动化部署实践.文章包括了:为什么选择AWS.AWS上自动化部署的优势和挑战.我们的解决方案,以及和AWS DevOps方案(Op ...
- 基于GitLab CI搭建Golang自动构建环境
基于GitLab CI搭建Golang自动构建环境 Golang发布遇到的问题 对于golang的发布,之前一直没有一套规范的发布流程,来看看之前发布流程: 方案一 开发者本地环境需要将环境变量文件改 ...
- 洪强宁:宜信PaaS平台基于Calico的容器网络实践
洪强宁:宜信PaaS平台基于Calico的容器网络实践 本文内容来自由七牛云主办的ECUG Con,独家授权InfoQ整理完成 容器云面临的网络挑战 在传统的IDC的架构里面网络是很重要的事情,在 ...
- 部署基于Gitlab+Docker+Rancher+Harbor的前端项目这一篇就够了
部署基于Gitlab+Docker+Rancher+Harbor的前端项目这一篇就够了 安大虎 momenta 中台开发工程师 6 人赞同了该文章 就目前的形势看,一家公司的运维体系不承载在 Do ...
- Ice系列--基于IceGrid的部署方案
前言 前一篇文章介绍了IceGrid的简单应用.这篇文章来介绍一下它的高端玩法-如何将模板,复制组,知名对象应用于部署方案及其作用. 基于模板的部署方案 之前介绍了xml格式的配置文件通过各种描述符如 ...
- 学习笔记——Maven实战(四)基于Maven的持续集成实践
Martin的<持续集成> 相信很多读者和我一样,最早接触到持续集成的概念是来自Martin的著名文章<持续集成>,该文最早发布于2000年9月,之后在2006年进行了一次修订 ...
- 基于Open vSwitch的OpenFlow实践
Open vSwitch(下面简称为 OVS)是由 Nicira Networks 主导的,运行在虚拟化平台(例如 KVM,Xen)上的虚拟交换机.在虚拟化平台上,OVS 可以为动态变化的端点提供 2 ...
随机推荐
- Blazor Server App Cannot find the fallback endpoint specified by route values
github官方issues中提到的解决方案,CreateBuilder时指定项目绝对路径可以解决. 1 // 指定项目路径,也可以用Assembly.GetCallingAssembly获取 2 c ...
- 树莓派4B-GPIO控制舵机转动
树莓派4B-GPIO控制舵机转动 硬件需求: 树莓派 舵机 杜邦线 舵机 什么是舵机? 舵机(servomotor)是一种简化版本的伺服电机,是位置伺服的驱动器,能够通过输入PWM信号控制旋转角度,具 ...
- eclipse注释取消注释
方法一:使用Ctrl+/快捷键 1 第1步:在Eclipse中拖动鼠标,选中需要注释的代码,通常为连续多行代码. 2 第2步:按住Ctrl+/快捷键,如图所示. 3 第3步:会发现所选代码被&qu ...
- AI生成前端组件的价值思考
想法来源 这个想法来源于我自己的需求,我自己首先就是最精准的目标用户,在这个AI时代,我希望AI可以帮我尽量多地干活. 结合自己的日常独立开发情况,发现花在调前端组件样式上的时间很多,因此思考能不能让 ...
- thinkphp5 关于跨域的一些坑
1.首先在tp5的入口文件:public/index.php 在里面添加三行: // [ 应用入口文件 ] header("Access-Control-Allow-Origin:*&quo ...
- 靶机: hard_socnet2
靶机: hard_socnet2 准备 靶机:https://download.vulnhub.com/boredhackerblog/hard_socnet2.ova MD5 验证: 9d6bed1 ...
- Django 处理http请求之使用session
Django 处理http请求之使用session by:授客 QQ:1033553122 欢迎加入全国软件测试交流群:7156436 测试环境 Win7 Django 1.11 Django提供 ...
- python_xecel
移动并重命名工作簿 1 from pathlib import Path # 导入pathlib模块的path类 2 import time 3 4 # Press the green button ...
- Jmeter函数助手2-Random
Random函数用于获取随机范围内的正整数或负整数. 一个范围内的最小值:必填,且必须填入整数(正负数都可以) 一个范围内允许的最大值:必填,且必须填入整数(正负数都可以).最大值需大于最小值如[-6 ...
- 【Java】数组强转问题
问题产生 问题代码: List<String> strs = new LinkedList<String>(); // 中间有添加元素的操作,这里省略... // 这里toAr ...