ubuntu安装gitlab

news2024/12/19 13:51:45

gitlab是什么?他有什么作用呢?

gitlab是一个开源的git仓库管理软件,并提供web界面,方便管理git仓库。和github很相似,不过github暂时没有开源版本,项目必须托管到github官方网站,不能本地部署。很多公司考虑到安全费用等因素,搭建自己的gitlab服务器。下面我将一步一步教大家搭建自己的gitlab服务器。我使用的linux版本是ubuntu。

更新安装所需要的包

sudo apt-get update
sudo apt install ca-certificates curl openssh-server postfix tzdata perl

在这里插入图片描述
在这里插入图片描述

安装gitlab

有了这些依赖项,就可以安装GitLab了。这个过程利用一个安装脚本来使用GitLab存储库配置您的系统。
切换到桌面,新建tmp文件夹

 cd ~
mkdir tmp
ls

在这里插入图片描述
下载脚本

cd tmp/
curl -LO https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh

在这里插入图片描述
安装脚本
执行脚本

sudo bash script.deb.sh

在这里插入图片描述
该脚本设置服务器以使用GitLab维护的存储库。这允许您使用与其他系统包相同的包管理工具来管理GitLab。完成后,您可以使用apt安装实际的GitLab应用程序:

sudo apt install gitlab-ce

这将在系统上安装必要的组件,可能需要一些时间才能完成。
如果下载太慢可以使用清华镜像
在这里插入图片描述

配置防火墙

在配置GitLab之前,您需要确保防火墙规则足够允许web流量。如果您按照先决条件中链接的指南进行操作,那么您已经启用了ufw防火墙。
通过运行以下命令查看活动防火墙的当前状态:

sudo ufw status

在这里插入图片描述
防火墙处于关闭状态,如果防火墙开启请执行下面命令:

sudo ufw allow http
sudo ufw allow https
sudo ufw allow OpenSSH

编辑GitLab配置文件

在使用应用程序之前,请更新配置文件并运行重新配置命令。首先,使用首选的文本编辑器打开GitLab的配置文件。此示例使用vim:

sudo vim /etc/gitlab/gitlab.rb

修改external_url
在这里插入图片描述
接下来,找到letsencrypt[‘contact_emails’]设置。如果您正在使用nano,可以通过按CTRL+W启用搜索提示。将letsencrypt[‘contact_emails’]写入提示符,然后按ENTER。此设置定义了一个电子邮件地址列表,如果您的域有问题,Let’s Encrypt项目可以使用该列表与您联系。建议取消注释并填写此信息,以告知您可能出现的任何问题,这里不设置了
重启gitlab

sudo gitlab-ctl reconfigure

这将使用可以找到的有关服务器的信息初始化GitLab。这是一个完全自动化的过程,因此您不必回答任何提示。该过程还将为您的域配置Let’s Encrypt证书。
时间有些长,耐心等待~~
在这里插入图片描述

通过Web界面执行初始配置

运行GitLab后,您可以通过web界面执行应用程序的初始配置。
访问gitlabhttp://192.168.20.135:8080/
在这里插入图片描述
修改端口

sudo vim /etc/gitlab/gitlab.rb
sudo gitlab-ctl reconfigure

在这里插入图片描述
访问gitlabhttp://192.168.20.135:8081/
在这里插入图片描述
GitLab为您生成初始安全密码。它存储在一个文件夹中,您可以作为管理sudo用户访问该文件夹:

sudo vim /etc/gitlab/initial_root_password

在这里插入图片描述
账号默认为root
在这里插入图片描述

更新密码

在这里插入图片描述
在这里插入图片描述
重新登录即可

调整配置文件设置

GitLab选择了一些合理的默认值,但一旦您开始使用该软件,这些默认值通常并不合适。
要进行必要的修改,请单击导航栏右上角的用户图标,然后选择编辑配置文件。
您可以从“管理员”和“admin@example.com“更准确地说。您选择的名称将显示给其他用户,而电子邮件将用于默认头像检测、通知、通过界面执行Git操作等:
在这里插入图片描述

更改账户名字

在这里插入图片描述
在这里,您可以启用双因素身份验证并更改用户名。默认情况下,第一个管理帐户的名称为root。由于这是一个已知的帐户名称,因此将其更改为其他名称更安全。您仍然具有管理权限;唯一会改变的是名字。用首选用户名替换root:
所以登陆的用户名会被修改为wjl
可以修改语言
在这里插入图片描述
在这里插入图片描述

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

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

相关文章

数据增强,扩充了数据集,增加了模型的泛化能力

数据增强(Data Augmentation)是在不实质性的增加数据的情况下,从原始数据加工出更多的表示,提高原数据的数量及质量,以接近于更多数据量产生的价值。 其原理是,通过对原始数据融入先验知识,加工…

【NFC音乐相册】简易制作

欢迎来到 Claffic 的博客 💞💞💞 前言: NFC音乐相册在前段时间火了一把,想必大家都听过了,最近我刷到了这个东西,闲来无事就弄了几个,这篇博客就记录下制作工序。 注:我所…

keepalive + nginx 来实现 对于nginx的高可用, 以及如何搭建主备模式

keepalive nginx 来实现 对于nginx的高可用, 以及如何搭建主备模式。 keeplived简介 Keepalived是用纯ANSI/ISO C编写的。该软件围绕一个中央I/O多路复用器进行连接,以提供实时网络设计。 1.1 Keepalived进程被分为3个不同进程 A.一个极简的父进程&#xff0c…

NLP大纲

第一章:概述 1. 什么是自然语言处理? 计算机具备人类的听、说、读、写、译、问、答、搜索、摘要、对话和聊天等能力 知识和常识进行推理和决策 支持客服、诊断、法律、教学等场景 2. 自然语言处理的主要任务有哪些? 分析、理解、转换、…

SpringBoot-运维实用篇

SpringBoot运维实用篇 1.SpringBoot程序的打包与运行 ​ 刚开始做开发学习的小伙伴可能在有一个知识上面有错误的认知,我们天天写程序是在Idea下写的,运行也是在Idea下运行的。 ​ 但是实际开发完成后,我们的项目是不可能运行在自己的电脑上…

图解LeetCode——剑指 Offer 46. 把数字翻译成字符串

一、题目 给定一个数字,我们按照如下规则把它翻译为字符串:0 翻译成 “a” ,1 翻译成 “b”,……,11 翻译成 “l”,……,25 翻译成 “z”。一个数字可能有多个翻译。请编程实现一个函数&#x…

spring boot3 一、 spring alibaba cloud 整合 网关 nacos config

jm-apis服务jm-user-api用户服务jm-apis-common公共模块jm-apis-common-bean公共beanjm-apis-common-conf公共配置jm-apis-common-tool公共工具jm-dubbo-apisRPC服务jm-dubbo-user-api用户RPC服务 jianmu-springboot3-springalibabacloud pom.xml <?xml version"1.0&…

电容学习(1)

电解电容 是具有极性的电容&#xff1b; 电解电容的体积大&#xff0c;只有在需要较大容值的时候才需要&#xff1b; 缺点&#xff1a;电解电容容值不稳定&#xff0c;容易随着温度和其他参数变化而变化&#xff1b;因此相对来说非电解电容更稳点一些&#xff1b; 电容的公式&…

如何定制一个智能洒水装置(养狗/养花人士请进)

目录 如何用智能地教狗狗上厕所如何定制一个智能洒水装置 背景 上一篇文章中提到了&#xff0c;我实现了一个自动检测狗狗有没有进厕所的功能。现在我们家的狗狗用它那不算大的小脑瓜&#xff0c;已经百分百学会&#xff08;但是&#xff01;也不知道它是不是聪明过头了&…

非常好看的html网页个人简历

一. 前言 文末获取gitee链接 在前几天逛b站的时候&#xff0c;发现了个比较实用的东西-----个人简介网页版&#xff0c;相当于网页版的个人简历&#xff0c;相较于PDF形式的&#xff0c;网页版所能呈现内容更加丰富&#xff0c;而且更加美观&#xff0c;在BOOS上被HR小姐姐要…

FL Studio21MAC电脑中文升级版安装图文教程

FL Studio版本有很多,每个版本各有优点。除了最新版本外,还有历史经典版本,用户可以根据自己的需求进行下载,FL Studio21是一款功能十分丰富和强大的音乐编辑软件&#xff0c;能够帮助用户进行编曲、剪辑、录音、混音等操作&#xff0c;让用户能够全面地调整音频&#xff0c;软…

2288hv5超融合服务器 数码管报888

【问题现象】 2288hv5超融合服务器&#xff0c;前面板数码管报888&#xff0c;电源灯黄灯闪烁&#xff0c;开不了机&#xff0c;ibmc网络是通的&#xff0c;但是web网页打不开 【问题原因】 iBMC的版本过低&#xff0c;iBMC在智能诊断数据库保护机制存在异常&#xff0c;导…

【算法笔记】前缀和与差分

第一课前缀和与差分 算法是解决问题的方法与步骤。 在看一个算法是否优秀时&#xff0c;我们一般都要考虑一个算法的时间复杂度和空间复杂度。 现在随着空间越来越大&#xff0c;时间复杂度成为了一个算法的重要指标&#xff0c;那么如何估计一个算法的时间复杂度呢&#xf…

数据库浅谈之共识算法

数据库浅谈之共识算法 HELLO&#xff0c;各位博友好&#xff0c;我是阿呆 &#x1f648;&#x1f648;&#x1f648; 这里是数据库浅谈系列&#xff0c;收录在专栏 DATABASE 中 &#x1f61c;&#x1f61c;&#x1f61c; 本系列阿呆将记录一些数据库领域相关的知识 &#x1…

Linux SELinux讲解

目录 SELinux概念 SELinux配置文件 SELINUX 工作模式 SELINUX TYPE策略类型 配置安全上下文 查看安全上下文 修改安全上下文 修改默认的安全上下文 配置策略规则 查看策略规则 修改策略规则状态 SELinux概念 为什么提出SELinux 之前学习的权限&#xff0c;都是基于用…

深力科电子-MachXO2系列 前所未有的灵活桥接和I/O扩展功能 LCMXO2-256HC-4TG100C FPGA现场可编程门阵列

lattice莱迪斯MachXO2系列超低密度FPGA现场可编程门阵列&#xff0c;适用于低成本的复杂系统控制和视频接口设计开发&#xff0c;满足了通信、计算、工业、消费电子和医疗市场所需的系统控制和接口应用。 瞬时启动&#xff0c;迅速实现控制——启动时间小于1mS&#xff0c;在上…

FreeRTOS信号量

前面介绍过&#xff0c;队列&#xff08;queue&#xff09;可以用于传输数据&#xff1a;在任务之间&#xff0c;任务和中断之间。消息队列用于传输多个数据&#xff0c;但是有时候我们只需要传递一个状态&#xff0c;这个状态值需要用一个数值表示&#xff0c;比如&#xff1a…

Android运行时权限Runtime Permission源码分析

Runtime Permission源码跟踪 Android 8.1.0 请求权限时弹窗代码 应用使用requestPermissions申请权限时&#xff0c;系统会弹出一个选择窗口&#xff0c;可进行允许。 源码在packages/apps/PackageInstaller/文件下 GrantPermissionsActivity.java是进行权限分配的弹出窗口…

分布式之PBFT算法

写在前面 在分布式之拜占庭问题 一文中我们分析了拜占庭问题&#xff0c;并一起看了支持拜占庭容错的口信消息性和签名消息性算法&#xff0c;但是这两种算法都有一个非常严重的问题&#xff0c;就是消息数量太多&#xff0c;通信的成本太大&#xff0c;消息数量复杂度为O(n ^…

CentOS 环境 OpneSIPS 3.1 版本安装及使用

文章目录1. OpenSIPS 源码下载2. 工具准备3. 编译安装4. opensips-cli 工具安装5. 启动 OpenSIPS 实例1. OpenSIPS 源码下载 使用以下命令即可下载 OpenSIPS 的源码&#xff0c;笔者下载的是比较稳定的 3.1 版本&#xff0c;读者有兴趣也可前往 官方传送门 sudo git clone htt…