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

news2025/1/18 6:55:38

文章目录

    • 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

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

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

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

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

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

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

相关文章

1.3.3 存储系统

目录 存储器分类存储器的层次结构主存储器高速缓存的特点及组成外存储器的种类和特点 存储器分类 存储器按照所处位置、制作材料、访问方式、寻址方式、工作方式可以分成多种类型。 位置:在主机或主板上的是内存,否则是外存。材料:磁存储器&…

【PyQt5教程 一】Qt Designer 安装及其使用方法说明,附程序源码

目录 一、PyQt5介绍: (1)PyQt简介: (2)PyQt API: (3)支持的环境: (4)安装: (5)配置环境变量…

SPT: Revisiting the Power of Prompt for Visual Tuning

方法简介 方法很简单,作者通过实验发现prompt拥有一个良好的初始化是VPT的关键,于是作者就通过在MAE/MoCo进行预训练来得到一个良好的prompt的初始化来提供微调阶段的prompt。 这么简单的方法是怎么催成一篇顶会的呢?值得我们去学习&#xf…

基于事件驱动的websocket简单实现

websocket的实现 什么是websocket? WebSocket 是一种网络通信协议,旨在为客户端和服务器之间提供全双工、实时的通信通道。它是在 HTML5 规范中引入的,可以让浏览器与服务器进行持久化连接,以便实现低延迟的数据交换。 WebSock…

基于协同过滤算法的宠物用品商城的设计与实现(计算机毕业设计)Java Spring 衍生为任何商城系统 毕业论文

系统合集跳转 源码获取链接 一、系统环境 运行环境: 最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。 IDE环境: Eclipse,Myeclipse,IDEA或者Spring Tool Suite都可以 tomcat环境: Tomcat 7.x,8.x,9.x版本均可 操作系统…

文本预处理介绍

文本预处理 文本预处理1.认识文本预处理2.文本处理的基本方法2.1.什么是分词2.2 什么是命名实体化2.3词性标注 3.文本张量的表示方法3.1文本张量表示3.2 one-hot词向量表示 4.Word2vec模型4.1模型介绍4.2word2vec的训练和使用 5.词嵌入word embedding 介绍6.文本数据分析1.文本…

力扣3381.长度可被K整除的子数组的最大元素和

力扣3381.长度可被K整除的子数组的最大元素和 题目 题目解析及思路 题目要求返回一段长度为K的倍数的最大子数组和 同余前缀和 代码 class Solution { public:long long maxSubarraySum(vector<int>& nums, int k) {int n nums.size();vector<long long>…

第三节、电机定速转动【51单片机-TB6600驱动器-步进电机教程】

摘要&#xff1a;本节介绍用定时器定时的方式&#xff0c;精准控制脉冲时间&#xff0c;从而控制步进电机速度 一、计算过程 1.1 电机每一步的角速度等于走这一步所花费的时间&#xff0c;走一步角度等于步距角&#xff0c;走一步的时间等于一个脉冲的时间 w s t e p t … ……

【数学建模】线性规划问题及Matlab求解

问题一 题目&#xff1a; 求解下列线性规划问题 解答&#xff1a; 先将题目中求最大值转化为求最小值&#xff0c;则有 我们就可以得到系数列向量: 我们对问题中所给出的不等式约束进行标准化则得到了 就有不等式约束条件下的变系数矩阵和常系数矩阵分别为&#xff1a; 等式…

云计算对定制软件开发的影响

在当代数字世界中&#xff0c;云计算是改变许多行业&#xff08;包括定制软件开发&#xff09;的最伟大的革命性趋势之一。由于这些公司努力寻求更好、更多不同的方式来履行职责&#xff0c;因此云计算与传统的内部部署基础设施相比具有许多不可否认的优势。这种范式转变对定制…

3D 生成重建020-Gaussian Grouping在场景中分割并编辑一切

3D 生成重建020-Gaussian Grouping在场景中分割并编辑一切 文章目录 0 论文工作1 方法2 实验结果 0 论文工作 最近提出的高斯Splatting方法实现了高质量的实时三维场景新视角合成。然而&#xff0c;它仅仅关注外观和几何建模&#xff0c;缺乏细粒度的物体级场景理解。为了解决…

GUI的最终选择:Tkinter

Tkinter是Python默认的GUI库&#xff0c;因此使用时直接导入即可&#xff1a;import tkinter 17.1 Tkinter之初体验 代码分析&#xff1a; tkinter.mainloop()通常是程序的最后一行代码&#xff0c;执行后程序进入主事件循环。 17.2 进阶版本 将代码封装成类&#xff1a; 运…

电子商务人工智能指南 3/6 - 聊天机器人和客户服务

介绍 81% 的零售业高管表示&#xff0c; AI 至少在其组织中发挥了中等至完全的作用。然而&#xff0c;78% 的受访零售业高管表示&#xff0c;很难跟上不断发展的 AI 格局。 近年来&#xff0c;电子商务团队加快了适应新客户偏好和创造卓越数字购物体验的需求。采用 AI 不再是一…

嵌入式软件C语言面试常见问题及答案解析(一)

本文中题目列表 1. 用预处理指令#define 声明一个常数,用以表明1年中有多少秒(忽略闰年问题)2. 写一个"标准"宏MIN ,这个宏输入两个参数并返回较小的一个。3. 预处理器标识#error的目的是什么?4. 嵌入式系统中经常要用到无限循环,你怎么样用C编写死循环呢?5. …

从失败中学习:如何将错误转化为学习机会

失败是人生的一部分&#xff0c;无论是在个人生活还是职业生涯中&#xff0c;我们都难免会遇到挫折和错误。然而&#xff0c;失败并不意味着终结&#xff0c;而是一个潜在的学习机会。通过正确的态度和方法&#xff0c;我们可以从失败中汲取经验&#xff0c;转化为成长的动力。…

HarmonyOS NEXT的Navigation,跳转子页面后底部Tab不隐藏问题解决

问题复现 一直以来&#xff0c;首页的Tabs是这么用的&#xff1a; import Home from "../pages/home/Home" import ZhiHu from "../pages/song/Song" import Mine from "../pages/mine/Mine"Entry Component struct Index {State currentIndex…

基础排序算法详解:冒泡排序、选择排序与插入排序

引言 上一章&#xff0c;我们聊到了排序的基本概念和常见算法的分类。这一次&#xff0c;我们从基础开始&#xff0c;深入剖析三种常见的O(n) 排序算法&#xff1a;冒泡排序、选择排序 和 插入排序。 它们是学习排序算法的入门神器&#xff0c;不仅实现简单&#xff0c;还能帮…

番茄钟与Todo List:用Go构建高效的时间管理工具

引言 在当今快节奏的世界中&#xff0c;时间管理和任务组织变得越来越重要。为了帮助用户提高效率&#xff0c;我开发了一个基于Golang的开源项目&#xff0c;基于fyne的ui&#xff0c;它结合了经典的番茄工作法&#xff08;Pomodoro Technique&#xff09;和功能丰富的待办事…

Python-标识符、隐式转换和显式转换

记录python学习&#xff0c;直到学会基本的爬虫&#xff0c;使用python搭建接口自动化测试就算学会了&#xff0c;在进阶webui自动化&#xff0c;app自动化 python基础1 标识符约定动态语言和静态语言隐式转换和显式转换隐式转换显式转换 实践是检验真理的唯一标准 标识符约定…

【全网最新】使用 1panel面板 部署若依系统( springboot 和 vue)项目

​​​​​​使用 1panel面板 部署 springboot 和 vue_1panel部署vue项目-CSDN博客 准备工作: 准备好的网站后台代码文件准备好的网站前端页面安装好1panel1panel中安装好mysql1panel中安装好redis1panel中安装好Openresty部署后台接口 在application.yml中修改后台端口,这里…