gitlab的部署

2023-05-16

1、Git、Github、Gitlab 的区别

Git是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。

是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。

Github是在线的基于Git的代码托管服务。 GitHub是2008年由Ruby on Rails编写而成。GitHub同时提供付费账户和免费账户。这两种账户都可以创建公开的代码仓库,只有付费账户可以创建私有的代码仓库。 Gitlab解决了这个问题, 可以在上面创建免费的私人repo。

git 是一套软件 可以做本地私有仓库

github 本身是一个代码托管网站 公有和私有仓库(收费) 不能做本地私有仓库

gitlab 本身也是一个代码托管的网站 功能上和github没有区别 公有和私有仓库(免费) 可以部署本地私有仓库

2 git的部署

2.1准备工作

#关闭防火墙、SELinux
#开启邮件服务
systemctl stop firewalld 
systemctl disabled firewalld

systemctl start  postfix
systemctl enable postfix

2.2 部署 Gitlab服务

安装依赖库

yum install -y curl openssh-server openssh-clients postfix cronie policycoreutils-python
# gitlab-ce 10.x.x以后的版本需要依赖policycoreutils-python

配置yum源进行安装

# vim /etc/yum.repos.d/gitlab-ce.repo
[gitlab-ce]
name=Gitlab CE Repository
baseurl=https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el$releasever/
gpgcheck=0
enabled=1

yum makecache
yum install gitlab-ce            #安装最新版本
# yum install gitlab-ce-x.x.x    #安装指定版本

 

#启动 第一次使用配置时间较长
gitlab-ctl reconfigure 

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`
configuration in /etc/gitlab/gitlab.rb file.
Then, you can start your GitLab instance by running the following command:
  sudo gitlab-ctl reconfigure

For a comprehensive list of configuration options please see the Omnibus GitLab readme
https://gitlab.com/gitlab-org/omnibus-gitlab/blob/master/README.md

  Verifying  : gitlab-ce-13.6.2-ce.0.el7.x86_64                                                                1/1 

Installed:
  gitlab-ce.x86_64 0:13.6.2-ce.0.el7                                                                               

Complete!

2.3 启动 Gitlab 服务

gitlab-ctl start

2.4 Gitlab 添加smtp邮件功能

#修改配置文件
sudo vi /etc/gitlab/gitlab.rb

#邮件配置
gitlab_rails['gitlab_email_enabled'] = true
gitlab_rails['gitlab_email_from'] = '37721596@qq.com'
gitlab_rails['gitlab_email_display_name'] = 'gitlab'
gitlab_rails['gitlab_email_reply_to'] = '37721596@qq.com'
gitlab_rails['gitlab_email_subject_suffix'] = '[gitlab]'
gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.qq.com"
gitlab_rails['smtp_port'] = 465
gitlab_rails['smtp_user_name'] = "37721596@qq.com"
gitlab_rails['smtp_password'] = "xxx" #这是我的qq邮箱授权码
gitlab_rails['smtp_domain'] = "smtp.qq.com"
gitlab_rails['smtp_authentication'] = "login"
gitlab_rails['smtp_enable_starttls_auto'] = true
gitlab_rails['smtp_tls'] = true
#保存后,重新配置并启动GitLab
gitlab-ctl reconfigure

gitlab-ctl start

 验证邮箱的可用性

#  gitlab-rails console -e production
--------------------------------------------------------------------------------
 Ruby:         ruby 2.7.2p137 (2020-10-01 revision 5445e04352) [x86_64-linux]
 GitLab:       13.6.2 (f508fb8a043) FOSS
 GitLab Shell: 13.13.0
 PostgreSQL:   11.9
--------------------------------------------------------------------------------
Loading production environment (Rails 6.0.3.3)
irb(main):001:0> Notify.test_email('327721596@qq.com', 'Message Subject', 'Message Body').deliver_now

2.5 Gitlab 的使用

在浏览器中输入http://ip:port,然后 change password: ,并使用root用户登录 即可 (后续动作根据提示操作)

 

1.Gitlab 命令行修改密码 

gitlab-rails console -e production
irb(main):001:0>user = User.where(id: 1).first      # id为1的是超级管理员
irb(main):002:0>user.password = 'yourpassword'      # 密码必须至少8个字符
irb(main):003:0>user.save!                          # 如没有问题 返回true
exit 												# 退出

2.Gitlab服务管理

 gitlab-ctl start                        # 启动所有 gitlab 组件;
 gitlab-ctl stop                         # 停止所有 gitlab 组件;
 gitlab-ctl restart                      # 重启所有 gitlab 组件;
 gitlab-ctl status                       # 查看服务状态;
 gitlab-ctl reconfigure                  # 初始化服务;
 vim /etc/gitlab/gitlab.rb               # 修改默认的配置文件;
 gitlab-ctl tail                         # 查看日志;

3.登陆 Gitlab

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

gitlab的部署 的相关文章

随机推荐

  • VSCode之CMake使用

    一 准备工作 下载 对应平台的VScode安装C 43 43 扩展 安装Cmake 工具扩展 并行需要安装 Cmake xff0c 编译器 xff0c 调试器和构建工具 cmake version 虽然咱们使用VSCode编辑代码 xff0
  • 运行apt-get update后出现错误

    一般错误是如下两种 xff1a 1 一般如果你的ubuntu是中文的设定了地区的 xff0c 错误是如下 xff1a W 无法下载http ppa launchpad net deluge team ppa ubuntu dists nat
  • 表达式求值(含括号的复杂运算)

    具体解析看注释 span class token macro property span class token directive keyword include span span class token string lt bits
  • HttpClient模拟登录总结(不能跳转及跳转后不能登录)

    最近在写一个模拟登录的程序 xff0c 从网上找了很多资料 xff0c 都没能有一个完整的例子可成功跳转登录后的页面 xff0c 现把我的代码拿来与大家分享一下 xff0c 希望可以帮到一些人吧 其原理是 xff1a 通过HttpClien
  • JestonTX2更新软件源

    JestonTX2刷机后需要更新软件源 更新软件源后 xff0c 才可以正常安装QT等软件 软件源记录文件放在以下文件中 cd etc apt source list 可以使用gedit打开此文件 sudo gedit etc apt so
  • Kali的下载安装详细过程

    1 什么是Kali xff1f Kali Linux是专门用于渗透测试的Linux操作系统 2 打开官网 Kali Linux Penetration Testing and Ethical Hacking Linux Distributi
  • 本地搭建GitLab地址不一致问题

    1 本地虚拟机用docker搭建Gitlab project clone 地址如下 xff1a 实际地址如下 xff1a http 192 168 56 51 root apacha backend 本来没在意这个问题 xff0c clon
  • 数据库笔试题(答案)

    一 填空题 每题2分 xff0c 共10分 1 索引字段值不唯一 xff0c 应该 使用 的索引类型为 普通索引 2 只有满足联接条件的记录才包含在查询结果中 xff0c 这种联接为 内联接 3 E R模型的组成包括那些 元素 实体 属性
  • mac时间机器占用大量系统盘空间且在访达中无法找到

    mac用时间机器备份到外置移动硬盘 xff0c 但是后来发现mac系统盘占用随之增加 经过研究发现 xff0c 时间机器备份是现在mac系统盘备份然后转移到移动硬盘 xff0c 而且系统盘中的备份文件是隐藏的 xff0c 所以在关于本机 x
  • android——降低gradle的版本、下载好gradle的包存放的位置

    一 降低gradle的版本 本文以gradle版本7 0 2改成6 3为例子 xff1a 1 在build gradle里面修改dependencies里面的 classpath 34 com android tools build gra
  • C语言十进制转八进制、十六进制以及十六进制转十进制、八进制

    以下程序的输出结果是 main int a 61 20 printf 34 d o x n 34 a a a 看到这个题目首先我们要明白 o 和 x代表的是什么意思 o代表的是输出该数字的八进制 x代表的是输出该数字的十六进制 1 题目给出
  • 解决Mybatis分页插件PageHelper自动添加limit导致分页失败问题

    目录 1 问题描述2 解决方案2 1 方案一2 2 方案二 3 完成效果4 一点困惑5 参考文献 1 问题描述 今天在完善项目的时候 xff0c 有一个需求就是给我的评论区实现分页显示评论数 xff0c 但是当自己运行的时候点击查看评论的时
  • STM32 HAL库 STM32CubeMX -- I2C(IIC)

    文章目录 一 I2C 协议简介I2C 物理层I2C协议层I2C架构通讯过程 二 STM32Cube MX配置三 I2C HAL库函数 一 I2C 协议简介 I2C 通讯协议 Inter xff0d Integrated Circuit 也就
  • 一个unsigned int 数的二进制表示中有多少个1

    这是一道面试题可以用以下的一些方案 第一种是很容易想到的采用循环的方式并且与1进行位与运算 xff0c 具体代码如下 1 unsigned int GetBitNumOfOne ByLoop1 unsigned int nValue 2 3
  • 网络安全(九)—— kali进行断网攻击

    kali进行断网攻击 1 查看是否有wlan0 wlan0mon网卡 ifconfig 2 开启监听 airmon ng start wlan0mon 3 扫描wifi airodump wlan0mon 攻击张书语 4 停止扫描 ctrl
  • Linux 之 System V信号量

    其实就是学几个函数的用法 xff1a ftok semget semctl semop 如果对哪个函数不熟悉就man 一下 xff0c 例如man semctl 下面是几个函数简单的实现代码 xff0c 自己可以实现一下 xff0c 助于理
  • Modern C++ 变长参数的展开

    变长参数模板和变长参数 部分 Code 来自 现代 C 43 43 教程 xff1a 高速上手 C 43 43 11 14 17 20 xff0c 这里作为笔记记录 include lt iostream gt include lt str
  • 自制计算器(C语言的简单实现)(可多次使用)

    对于刚学C语言的小白来说 xff0c 似乎感觉不到C语言可以做些什么事情而感到枯燥 xff0c 接下来我讲带大家一起来做一个小的C语言程序 计算器 在这个程序中我们使用了switch case语句 xff0c do while循环 xff0
  • 在ubuntu创建可以在图形界面登录的用户

    sudo useradd s bin bash d home wykeinstein m wykeinstein sudo passwd wykeinstein 上述两条命令创建了可以在图形界面下登录的wykeinstein用户 注销当前用
  • gitlab的部署

    1 Git Github Gitlab 的区别 Git是一个开源的分布式版本控制系统 xff0c 用于敏捷高效地处理任何或小或大的项目 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件