当前位置: 首页 > news >正文

GitLab基础环境部署:Ubuntu 22.04.5系统在线安装GitLab 17.5.2实操手册

文章目录

    • GitLab基础环境部署:Ubuntu 22.04.5系统在线安装GitLab 17.5.2实操手册
      • 一、环境准备
        • 1.1 机器规划
        • 1.2 环境配置
          • 1.2.1 设置主机名
          • 1.2.2 停止和禁用防火墙
          • 1.2.3 更新系统
      • 二、GitLab安装配置
        • 2.1 安装GitLab所需的依赖包
        • 2.2 添加GitLab存储库
          • 2.2.1 将GitLab存储库添加到apt源列表中
          • 2.2.2 使apt获取最新的GitLab软件包信息
        • 2.3 安装 GitLab
          • 2.3.1 查询GitLab可以安装的版本信息
          • 2.3.2 指定版本安装GitLab
        • 2.3 GitLab配置
          • 2.3.1 更改GitLab配置
          • 2.3.2 重新配置GitLab
      • 三、GitLab使用
        • 3.1 更改GitLab登录用户密码
        • 3.2 更改GitLab界面为中文
        • 3.3 GitLab常用命令
          • 3.3.1 查看GitLab服务状态
          • 3.3.2 停止GitLab
          • 3.3.3 启动GitLab
          • 3.3.4 重启GitLab
          • 3.3.5 查看GitLab日志
          • 3.3.6 查看GitLab的版本号

GitLab基础环境部署:Ubuntu 22.04.5系统在线安装GitLab 17.5.2实操手册

一、环境准备

1.1 机器规划

操作系统采用Ubuntu 22.04.5的版本,内核版本是5.15.0-125-generic,具体的信息如下:

主机名称IPOS版本GitLab版本
app192.168.1.134Ubuntu 22.04.5 LTSgitlab-ce_17.5.2
1.2 环境配置
1.2.1 设置主机名

根据机器的规划,设置主机名为gitlab。

superman@app:~$ sudo hostnamectl set-hostname gitlab && bash
1.2.2 停止和禁用防火墙
superman@app:~$ sudo systemctl disable --now ufw
1.2.3 更新系统

在开始安装GitLab之前,首先需要确保系统是最新的。打开终端并执行以下命令来更新系统软件包。

superman@app:~$ sudo apt update
superman@app:~$ sudo apt upgrade

这将更新系统上的所有软件包到最新版本。

二、GitLab安装配置

2.1 安装GitLab所需的依赖包
superman@app:~$ sudo apt-get install -y curl openssh-server ca-certificates tzdata perl

image-20241129144045119

2.2 添加GitLab存储库

GitLab提供了官方的存储库,可以将其添加到系统中以方便安装和更新。

2.2.1 将GitLab存储库添加到apt源列表中

接下来,执行以下命令将GitLab存储库添加到apt源列表中。

superman@app:~$ sudo curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash

image-20241129143942627

2.2.2 使apt获取最新的GitLab软件包信息

添加存储库后,执行以下命令以使apt获取最新的GitLab软件包信息:

superman@app:~$ sudo apt update

image-20241125111223599

2.3 安装 GitLab

现在可以使用apt安装GitLab了。

2.3.1 查询GitLab可以安装的版本信息
superman@app:~$ apt list -a | grep gitlab

image-20241129143539890

image-20241129143634175

image-20241129143732548

2.3.2 指定版本安装GitLab

执行以下命令来安装GitLab:

$ sudo apt-get install -y gitlab-ce=17.5.2-ce.0

image-20241129143414786

image-20241129143442198

安装完成后,GitLab服务将自动启动。

2.3 GitLab配置
2.3.1 更改GitLab配置

编辑 /etc/gitlab/gitlab.rb 文件

$ sudo vim /etc/gitlab/gitlab.rb

找到 external_url ‘http://gitlab.example.com’ 修改为服务器的ip及端口,如将

external_url 'http://gitlab.example.com'

修改为

external_url 'http://192.168.1.134:9090'
2.3.2 重新配置GitLab

**注意:**此命令配置过程较慢长,请耐心等待。

$ sudo gitlab-ctl reconfigure

重新配置后如果出现下面的内容,则表示安装成功
image-20241123195629129

**注意:**最后提示已经默认有root账户了,首次登录就是要设置root用户密码。

三、GitLab使用

3.1 更改GitLab登录用户密码

在浏览器中输入 http://192.168.1.134:9090,出现下面界面则表示安装成功。

image-20241123195833489

然后使用用户名root,以及从 /etc/gitlab/initial_root_password 文件中获取的密码进行登录。

查询默认密码

$ sudo cat /etc/gitlab/initial_root_password

image-20241123205854714

使用默认密码登录

image-20241123200135292

登录成功后的界面

image-20241123202715516

修改root的密码

image-20241123202144978

image-20241123202234569

image-20241123202313682

image-20241123202613047

修改完root密码后,提示下面登录页面

image-20241123202631971

使用root用户登录后如下

image-20241123202715516

至此gitlab已经安装成功。

3.2 更改GitLab界面为中文

image-20241123203156570

image-20241123203313886

image-20241123203343638

重新登录之后界面如下

image-20241123203558581

3.3 GitLab常用命令
3.3.1 查看GitLab服务状态
$ sudo gitlab-ctl status

image-20241123204316806

3.3.2 停止GitLab
$ sudo gitlab-ctl stop

image-20241123204356748

3.3.3 启动GitLab
$ sudo gitlab-ctl start

image-20241123204446991

3.3.4 重启GitLab
$ sudo gitlab-ctl restart

image-20241123204642551

3.3.5 查看GitLab日志
$ sudo gitlab-ctl tail

image-20241123205016936

3.3.6 查看GitLab的版本号
$ gitlab-rake gitlab:env:info

image-20241123210553428

原文链接:https://mp.weixin.qq.com/s/pAXkQuftpFp0LLc8P0UlyA

👍 点赞,你的认可是我创作的动力!

⭐️ 收藏,你的青睐是我努力的方向!

✏️ 评论,你的意见是我进步的财富!

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

相关文章:

GitLab基础环境部署:Ubuntu 22.04.5系统在线安装GitLab 17.5.2实操手册

文章目录 GitLab基础环境部署:Ubuntu 22.04.5系统在线安装GitLab 17.5.2实操手册一、环境准备1.1 机器规划1.2 环境配置1.2.1 设置主机名1.2.2 停止和禁用防火墙1.2.3 更新系统 二、GitLab安装配置2.1 安装GitLab所需的依赖包2.2 添加GitLab存储库2.2.1 将GitLab存储…...

SpringBoot3配置文件

一、统一配置管理概述: SpringBoot工程下,进行统一的配置管理,你想设置的任何参数(端口号、项目根路径、数据库连接信息等等)都集中到一个固定位置和命名的配置文件(application.properties或application.yml)中 配置文件应该放置在Spring Boot工程的s…...

【机器学习】任务十二:循环神经网络

1.循环神经网络 1.1 什么是循环神经网络(RNN)? 循环神经网络(Recurrent Neural Network, RNN) 是一种用于处理序列数据的神经网络类型,它的主要特点是拥有循环连接,使得网络可以对序列中的每个…...

【返璞归真】-切比雪夫不等式(Chebyshev‘s Inequality)

切比雪夫不等式(Chebyshev’s Inequality) 切比雪夫不等式是概率论中的一个基本不等式,用于估计随机变量偏离其期望值一定范围的概率。它对于任何具有有限期望和有限方差的随机变量都成立。 公式表达 切比雪夫不等式的基本形式如下&#xf…...

【Django】在view中调用channel来主动进行websocket通信

前提:consumer中已经写好了建立连接的代码,并且能够成功把连接加入到通道层的组内 可以参考我的另一个博客: LuckySheet协同编辑后端示例(DjangoChannel,Websocket通信)_lucksheet 协同编辑-CSDN博客 我是懒得去折腾luckysheet的源码&…...

18.[极客大挑战 2019]BabySQL1

进入靶场 随便输输 再输输 可以判断是单引号闭合 再随便输输 查询字段数量 得,过滤了 关键字也过滤了 只能双写了 根据回显,这样可以,只是需要改改 1,2不行 1,2,3行 1,2,3,4不行 可以尝试得到库名,表名了 库名 database(…...

Python快速入门二:Python3 基础语法

一、编码 默认情况下,Python 3 源码文件以 UTF-8 编码,所有字符串都是 unicode 字符串。 当然你也可以为源码文件指定不同的编码: # -*- coding: cp-1252 -*-上述定义允许在源文件中使用 Windows-1252 字符集中的字符编码,对应适…...

1-1 C语言链表

目录 目录 1.0 定义 2.0 为什么使用链表 3.0 链表原理 4.0 创建链表节点 5.0 链表原理续 6.0 链表实现 6.0.1 创建节点 6.0.2 初始化链表 6.0.3 添加链表节点 6.0.4 循环遍历 6.0.5 插入节点 6.0.6 插入头结点main函数 7.0 完整代码 8.0 节点添加方案二 8.0.1 …...

[0629].第29节:配置中心业务规则与动态刷新

我的后端学习大纲 SpringCloud学习大纲 1、编码实现3377服务: 1.1.建module: 1.2.改pom: 1.3.写YML: 1.Nacos同Consul一样,在项目初始化时,要保证先从配置中心进行配置拉取,拉取配置之后,才能保证项目的正…...

mac: docker : Command not found解决

描述: 安装docker但是docker命令显示Command not found 分析: mac没有配置对应的环境变量 解决方案: 打开配置文件: vim ~/.zshrc写docker环境变量: export PATH"/Applications/Docker.app/Contents/Resources/bin:$PATH"保存退出: esc,输入wq,按enter 配置文…...

Django drf基于APIView 快速使用

1. 注册 # settings.pyINSTALLED_APPS [,rest_framework, ]2. 路由 from django.urls import pathurlpatterns [path(task/, views.TaskAPIView.as_view()) ]3. 视图 from rest_framework.views import APIView from rest_framework.response import Responseclass TaskAPIV…...

【MarsCode】每日一题数组 之 数字分组求偶数和

数字分组求偶数和 1.问题描述 问题描述 小M面对一组从 1 到 9 的数字,这些数字被分成多个小组,并从每个小组中选择一个数字组成一个新的数。目标是使得这个新数的各位数字之和为偶数。任务是计算出有多少种不同的分组和选择方法可以达到这一目标。 n…...

解决:error: subprocess-exited-with-error 的问题

系统和配置: ubuntu20.04 python3.10 torch2.5.1 pip install时报错如下 (实际指令是:pip3 install -r drl_grasping/python_requirements.txt) Collecting python-xlib>0.17 (from pynput1.7.6->-r drl_grasping/python_…...

使用腾讯混元(HunYuanVideo)视频模型FP8量化版本来生成绅士动画,模型体积30G,8G甜品卡可玩,2秒视频需要15分钟

腾讯混元(HunYuanVideo)视频模型发布以来,视频效果有口皆碑,但由于推理门槛比较高,消费级显卡用户望而却步,最近大神Kijai发布了FP8量化版本模型,使得甜品卡用户也有了一餐秀色的可能。 本次我们利用HunYuanVideo量化…...

使用Ancona安装node,安装vue

搜索Conda仓库中可用的Node.js版本 conda search nodejs 通过Conda安装Node.js conda install nodejs 检查已安装的Node.js版本 node -v 安装中国npm镜像(cnpm) conda install cnpm 使用cnpm全局安装Vue CLI cnpm install -g vue/cli...

如何“安装Android SDK“?

一、下载 https://android-sdk.en.softonic.com/ 二、解压(不能有中文) 三、配置环境变量 1、ANDROID_HOME:D:\android-sdk 2、在Path添加文件路径 四、验证 adb version...

天童教育:提升孩子的语言表达能力

语言表达能力如同阳光、空气和水,无处不在,无时不用。然而,很多人并没有意识到,想要让孩子能够良好适应社会生活,提升他们的语言表达能力是至关重要的。大连天童教育认为,我们务必重视孩子的语言表达能力&a…...

Node.js中JWT的token完整生命周期管理:从生成到销毁

Node.js中JWT的token完整生命周期管理:从生成到销毁 在Node.js中使用JWT(JSON Web Token)进行身份验证和授权是一种常见的实践。下面详细介绍JWT从生成到销毁的过程。 JWT生成 安装jsonwebtoken库: 要生成JWT,首先…...

Kotlin报错:lateinit property xxx has not been initialized

Kotlin报错:lateinit property xxx has not been initialized 发生在定义了一个名为xxx的lateinit变量。 解决,在调用前,可以先判断一层该xxx变量是否已经初始化: if (this::xxx.isInitialized) {//正常使用该变量} kotlin.Unini…...

debian编译失败

A、缘由和分析 debian的代码在删除该路径下的2个包后, 重新全编,编译不过的问题。 至于我为什么删除这2个包,这是因为在sdk第一次编译时一些文件已经打包进去了,我现在的修改无法更新进img中,而现在我的项目中不需要…...

React hook之useRef

React useRef 详解 useRef 是 React 提供的一个 Hook,用于在函数组件中创建可变的引用对象。它在 React 开发中有多种重要用途,下面我将全面详细地介绍它的特性和用法。 基本概念 1. 创建 ref const refContainer useRef(initialValue);initialValu…...

智慧工地云平台源码,基于微服务架构+Java+Spring Cloud +UniApp +MySql

智慧工地管理云平台系统,智慧工地全套源码,java版智慧工地源码,支持PC端、大屏端、移动端。 智慧工地聚焦建筑行业的市场需求,提供“平台网络终端”的整体解决方案,提供劳务管理、视频管理、智能监测、绿色施工、安全管…...

CMake基础:构建流程详解

目录 1.CMake构建过程的基本流程 2.CMake构建的具体步骤 2.1.创建构建目录 2.2.使用 CMake 生成构建文件 2.3.编译和构建 2.4.清理构建文件 2.5.重新配置和构建 3.跨平台构建示例 4.工具链与交叉编译 5.CMake构建后的项目结构解析 5.1.CMake构建后的目录结构 5.2.构…...

服务器硬防的应用场景都有哪些?

服务器硬防是指一种通过硬件设备层面的安全措施来防御服务器系统受到网络攻击的方式,避免服务器受到各种恶意攻击和网络威胁,那么,服务器硬防通常都会应用在哪些场景当中呢? 硬防服务器中一般会配备入侵检测系统和预防系统&#x…...

Java-41 深入浅出 Spring - 声明式事务的支持 事务配置 XML模式 XML+注解模式

点一下关注吧!!!非常感谢!!持续更新!!! 🚀 AI篇持续更新中!(长期更新) 目前2025年06月05日更新到: AI炼丹日志-28 - Aud…...

全面解析各类VPN技术:GRE、IPsec、L2TP、SSL与MPLS VPN对比

目录 引言 VPN技术概述 GRE VPN 3.1 GRE封装结构 3.2 GRE的应用场景 GRE over IPsec 4.1 GRE over IPsec封装结构 4.2 为什么使用GRE over IPsec? IPsec VPN 5.1 IPsec传输模式(Transport Mode) 5.2 IPsec隧道模式(Tunne…...

力扣热题100 k个一组反转链表题解

题目: 代码: func reverseKGroup(head *ListNode, k int) *ListNode {cur : headfor i : 0; i < k; i {if cur nil {return head}cur cur.Next}newHead : reverse(head, cur)head.Next reverseKGroup(cur, k)return newHead }func reverse(start, end *ListNode) *ListN…...

并发编程 - go版

1.并发编程基础概念 进程和线程 A. 进程是程序在操作系统中的一次执行过程&#xff0c;系统进行资源分配和调度的一个独立单位。B. 线程是进程的一个执行实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位。C.一个进程可以创建和撤销多个线程;同一个进程中…...

Redis:现代应用开发的高效内存数据存储利器

一、Redis的起源与发展 Redis最初由意大利程序员Salvatore Sanfilippo在2009年开发&#xff0c;其初衷是为了满足他自己的一个项目需求&#xff0c;即需要一个高性能的键值存储系统来解决传统数据库在高并发场景下的性能瓶颈。随着项目的开源&#xff0c;Redis凭借其简单易用、…...

Qemu arm操作系统开发环境

使用qemu虚拟arm硬件比较合适。 步骤如下&#xff1a; 安装qemu apt install qemu-system安装aarch64-none-elf-gcc 需要手动下载&#xff0c;下载地址&#xff1a;https://developer.arm.com/-/media/Files/downloads/gnu/13.2.rel1/binrel/arm-gnu-toolchain-13.2.rel1-x…...