ubuntu20 安装、配置Gitlab

devtools/2025/3/14 17:37:50/

1. 安装依赖

sudo apt update
sudo apt install ca-certificates curl openssh-server postfix

对于postfix的安装,请在出现提示时选择“ Internet站点”,其余选项按默认值即可。

2. 下载安装gitlab

下载

sudo apt-get install wget
wget -P /Downloads https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/ubuntu/pool/focal/main/g/gitlab-ce/gitlab-ce_17.9.1-ce.0_amd64.deb

或者手动从清华镜像源下载安装,下载地址为:

Index of /gitlab-ce/ubuntu/pool/focal/main/g/gitlab-ce/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror

安装

sudo dpkg -i gitlab-ce_17.9.1-ce.0_amd64.deb

一切自动安装直到出现以下界面,表示安装成功。

3. 配置gitlab

3.1 配置访问IP

gitlab的配置文件在 /etc/gitlab/gitlab.rb 中,需要把访问url改为自己的ip地址

1)查看本机IP地址

打开终端,输入以下命令查看ip地址

ifconfig

2)打开并编辑/etc/gitlab/gitlab.rb

sudo gedit /etc/gitlab/gitlab.rb

编辑 gitlab.rb 文件:

# 找到
external_url 'http://gitlab.example.com'
# 修改为
external_url 'http://192.168.x.x:9090' # 改为自己的ipd地址

3)重启gitlab

sudo gitlab-ctl reconfigure # 需要等一段时间
sudo gitlab-ctl restart

4)启动防火墙,允许固定端口的访问(对于离线本地操作,可能不设置也可以)

# 启动防火墙
sudo ufw enable
# 开放之前设置的端口
sudo ufw allow 9090
# 查看防火墙状态
sudo ufw status
# 开放http,https,OpenSSH
sudo ufw allow http
sudo ufw allow https
sudo ufw allow OpenSSH

5)访问gitlab

打开浏览器, 访问上面配置的gitlab地址 http://192.168.x.x:9090/ 弹出以下界面:

6)获取初始root密码

在 Ubuntu 下部署 GitLab 后,默认的 root 账号的初始密码是随机生成的,并存储在 /etc/gitlab/initial_root_password 文件中。你可以通过以下步骤获取初始密码:

 sudo cat /etc/gitlab/initial_root_password

在最后一行会显示初始的随机密码,示例如下:

 Password: muAmelEQjfjn0Bw26z35XfffrNjaTbiFJLHk2oMf+ac=

其中 xxxxxxxxxxxxxxxxxxxxxx 就是 root 用户的初始密码。

3.2 修改root密码

1)获取初始root密码

在 Ubuntu 下部署 GitLab 后,默认的 root 账号的初始密码是随机生成的,并存储在 /etc/gitlab/initial_root_password 文件中。你可以通过以下步骤获取初始密码:

 sudo cat /etc/gitlab/initial_root_password

在最后一行会显示初始的随机密码,示例如下:

 Password: muAmelEQjfjn0Bw26z35XfffrNjaTbiFJLHk2oMf+ac=

其中 xxxxxxxxxxxxxxxxxxxxxx 就是 root 用户的初始密码。

2)修改root密码

a)登录 GitLab

        使用 root 账号登录 GitLab。

b)进入用户设置

        点击左上角的用户头像(位置),选择 Edit profile(编辑个人资料)。

c)修改密码

        在左侧菜单中选择 Password(密码)。

        输入当前密码和新密码,然后点击 Save password(保存密码)。

d)其他方法:

        1. 使用 Rails 控制台重置密码。如果你无法通过网页界面修改密码(例如忘记了密码),可以通过 GitLab 的 Rails 控制台重置密码。 ​

        2. 使用 GitLab 命令行工具重置密码

3.3 创建新用户(无需验证)

 

进入以下界面,填写相关信息,其中邮箱可以是真实的,也可以是随机虚假的,前者适用于联网条件下使用,便于新用户自己设置自己的密码,后者适合离线状况下用,先填写一个随机的邮箱, 然后由管理员进后台修改密码,这里展示第二种方法:

点击“Create user”后, 进入以下界面:

 再次点击“User”,进入user管理界面,找到自己新创建的user1, 点击对应的“edit”按钮:

赋予登录密码

 

当用户重新登录时,会弹出以下界面,要求用户重新修改密码:

此时重新设置密码然后重新登录即可。

3.4 设置中文格式

左上角->preference->language->简体中文

点击“Save changes”, 然后随便点击任何一个菜单栏的按钮,即可发现语言已经转变成英文。

3.5 设置存储仓库数据

在 GitLab 中,默认的存储目录位于 /var/opt/gitlab/git-data。如果你希望将存储目录修改到其他位置(例如更大的磁盘分区或外部存储),可以按照以下步骤操作。

1) 停止gitlab服务

 sudo gitlab-ctl stop

2) 创建新的存储目录

假设你想将存储目录改为 /mnt/gitlab-data,首先创建该目录并设置正确的权限:

 sudo mkdir -p /mnt/gitlab-datasudo chown git:git /mnt/gitlab-datasudo chmod 700 /mnt/gitlab-data

3) 迁移新的存储目录

如果 GitLab 中已经有数据,你需要将现有数据迁移到新的存储目录:

 sudo rsync -av /var/opt/gitlab/git-data/ /mnt/gitlab-data/

迁移完成后,可以备份旧的存储目录(可选):

 sudo mv /var/opt/gitlab/git-data /var/opt/gitlab/git-data.bak

4) 修改gitlab配置文件

编辑 GitLab 的配置文件 /etc/gitlab/gitlab.rb,设置新的存储目录:

 sudo gedit /etc/gitlab/gitlab.rb

找到或添加以下配置项(我是直接添加,因为没有找到这个命令):

 git_data_dirs({"default" => {"path" => "/mnt/gitlab-data"}})

5) 重新配置Gitlab

运行以下命令使配置生效:

sudo gitlab-ctl reconfigure

6) 启动gitlab

重新启动 GitLab 服务:

sudo gitlab-ctl start

7) 验证

登录 GitLab,确保所有功能正常。 检查新的存储目录是否被使用:

sudo ls /mnt/gitlab-data

3.6 设置gitlab开机自动启动

sudo systemctl enable gitlab-runsvdir.service

gitlab的启动需要约1分钟,一般开机后等一会就可以登录了。

3.7 gitlab常用命令


http://www.ppmy.cn/devtools/167073.html

相关文章

【Academy】服务器端模板注入 ------ Server-side template injection

服务器端模板注入 ------ Server-side template injection 1. 什么是服务器端模板注入?2. 服务器端模板注入有什么影响?3. 服务器端模板注入漏洞是如何产生的?4. 构建服务器端模板注入4.1 检测4.1.1 纯文本上下文4.1.2 代码上下文 4.2 识别4.…

Matplotlib

Matplotlib 使用前需要先导入模块 import matplotlib.pyplot as plt import numpy as np绘制x点和y点 plot()函数用于在图表中绘制点(标记) 默认情况下,会从点到点之间绘制一条直线 参数1是一个包含x轴上点的数组 参数2是一个包含y轴上点的…

HTML5(Web前端开发笔记第一期)

p.s.这是萌新自己自学总结的笔记,如果想学习得更透彻的话还是请去看大佬的讲解 目录 三件套标签标题标签段落标签文本格式化标签图像标签超链接标签锚点链接默认链接地址 音频标签视频标签 HTML基本骨架综合案例->个人简介列表表格表单input标签单选框radio上传…

安装 ubuntu 2404 LTS 服务器 设置 服务器名称

安装 ubuntu服务器 设置 服务器名称 hostname 打开终端(Terminal),通过快捷键CtrlAltT或在应用程序中搜索"终端"来打开;在终端中输入以下命令:hostname,然后按下回车键即可查看本机服务器名称。…

探索移动端开发新可能: Android Termux环境下部署MariaDB数据库

文章目录 前言1. 安装MariaDB2. 安装cpolar内网穿透工具3. 创建安全隧道映射mysql4. 公网远程连接5. 固定远程连接地址 前言 在这个数字时代,我们的智能手机早已突破了通话、发短信和刷社交媒体的界限。你知道吗?现在的智能机性能强大到足以支持我们进行…

如何利用 PostgreSQL 的 JSONB API 作为扩展的轻量级 JSON 解析器

前言 在基于 C 语言的 PostgreSQL 扩展开发中,您可能会遇到需要处理 JSON 等结构化数据的情况。通常,您可能会在扩展中引入第三方 JSON 解析库,例如 cJSON 或 libjansson。这些库功能强大、易于使用且提供了丰富的特性,但如果我们…

使用OpenCV和MediaPipe库——抽烟检测(姿态监控)

目录 抽烟检测的运用 1. 安全监控 (1) 公共场所禁烟监管 (2) 工业安全 2. 智能城市与执法 (1) 城市违章吸烟检测 (2) 无人值守管理 3. 健康管理与医疗 (1) 吸烟习惯分析 (2) 远程监护 4. AI 监控与商业分析 (1) 保险行业 (2) 商场营销 5. 技术实现 (1) 计算机视…

思维链医疗编程方法论框架(Discuss V1版)

思维链医疗编程方法论框架 1. 方法论核心定义 思维链医疗编程方法论是一种结合结构化思维链(Chain of Thought)与医疗领域需求的系统化编程实践框架,旨在通过分步逻辑推理、知识整合与动态反馈,提升医疗软件/算法的开发效率、准确性与可解释性。该方法论的关键在于通过清晰…