基于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 ...
随机推荐
- Java 中的泛型 集合(List,Set) Map
泛型 集合(List,Set) Map 泛型 泛型的本质是参数化类型,即允许在编译时对集合进行类型检查,从而避免安全问题,提高代码的复用性 泛型的具体定义与作用 定义:泛型是一种在编译阶段进行类型检查 ...
- 洛谷P1004
洛谷P1004方格取数 题目大意 本题简要意思就是一个人从一个数字矩阵的左上角走到右下角,只能向下和向右走,拿完的数对应位置变成0,并且这个人要走两次,需要计算两次所拿数的最大值 Train of t ...
- 数据存储为json或数据库
1.数据存储 In [ ]: import requests from bs4 import BeautifulSoup rqq = requests.get('http://www.tipdm.co ...
- 利用FastAPI和OpenAI-Whisper打造高效的语音转录服务
最近好久没有写博客了,浅浅记录下如何将OpenAI-Whisper做成Web服务吧 介绍 在这篇指导性博客中,我们将探讨如何在Python中结合使用FastAPI和OpenAI-Whisper.Ope ...
- TIER 0: Fawn
FTP FTP(File Transfer Protocol)是一种用于在网络上进行文件传输的协议和相应的工具 RFC 959 文档:是定义了 FTP 协议的规范 FTP 使用两个不同的端口 TCP/ ...
- MFC 关于按键状态获取
alt键会阻断消息? moousemovealt键无法判断,按下一次 并松开一次状态改变一次#define KeyState GetAsyncKeyState BOOL bCtrlDown = (Ke ...
- RestSharp编写api接口测试,并实现异步调用(不卡顿)
首先,确保你已经安装了RestSharp NuGet包.如果没有安装,可以通过以下命令安装: bash Install-Package RestSharp 然后,在你的C#代码中,你可以按照以下步骤操 ...
- RHCA rh442 004 加载模块 ulimit cgroup
模块调优 lsmod 可以看到内核加载的模块 [root@servera ~]# lsmod | grep usb [root@servera ~]# modprobe usb_storage [ro ...
- 备份服务器eBackup
目录 软件包方式安装eBackup备份软件 1.前景提要 2.创建虚拟机 3.安装备份软件. 4.安装 eBackup 补丁 5.配置 eBackup 服务器 6.访问web界 ...
- 怎么在Ubuntu系统云服务器搭建自己的幻兽帕鲁服务器?幻兽帕鲁搭建教程
<幻兽帕鲁>是一款备受瞩目的开放世界生存建造游戏,近期在游戏界非常火爆.玩家可以在游戏世界中收集神奇的生物"帕鲁",并利用它们进行战斗.建造.农耕.工业生产等各种活动. ...