DevOps元素周期表——1号元素 Gitlab

GitLab 是由 GitLab Inc.开发,一款基于 Git 的完全集成的软件开发平台(fully integrated software development platform)。另外,GitLab 且具有wiki以及在线编辑、issue跟踪功能、CI/CD 等功能。

一. 简介

官网: https://about.gitlab.com/

GitLab是一个利用 Ruby on Rails 开发的开源应用程序,实现一个自托管的Git项目仓库,可通过Web界面进行访问公开的或者私人项目。

它拥有与Github类似的功能,能够浏览源代码,管理缺陷和注释。可以管理团队对仓库的访问,它非常易于浏览提交过的版本并提供一个文件历史库。它还提供一个代码片段收集功能可以轻松实现代码复用,便于日后有需要的时候进行查找。

GitLab 5.0以前版本要求服务器端采用 Gitolite 搭建,5.0版本以后不再使用 Gitolite ,采用自己开发的 gitlab-shell 来实现。如果你觉得安装麻烦可以使用 GitLab Installers 一键安装程序。

二. 安装配置

  • 系统

    Centos7

  • 准备工作

    • 关闭firewalld防火墙

      • systemctl stop firewalld
      • systemctl disable firewalld
    • 关闭SELINUX并重启系统

      • vi /etc/sysconfig/selinux

        SELINUX=disabled

      • reboot

  • 开始安装

    安装Omnibus Gitlab-ce package

    # yum -y install curl policycoreutils openssh-server openssh-clients postfix

    配置YUM仓库

    # curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash

    启动postfix邮件服务

    # systemctl start postfix && systemctl enable postfix

    安装Gitlab-ce社区版本

    # yum install -y gitlab-ce

    证书创建与配置加载

    Nginx SSL代理服务配置

    初始化Gitlab相关服务并完成安装

    # mkdir -p /etc/gitlab/ssl
    
    # openssl genrsa -out "/etc/gitlab/ssl/gitlab.example.com.key" 2048
    # openssl req -new -key "/etc/gitlab/ssl/gitlab.example.com.key" -out "/etc/gitlab/ssl/gitlab.example.com.csr"
# openssl x509 -req -days 365 -in "/etc/gitlab/ssl/gitlab.example.com.csr" -signkey "/etc/gitlab/ssl/gitlab.example.com.key" -out "/etc/gitlab/ssl/gitlab.example.com.crt"
# chmod 600 *
# vi /etc/gitlab/gitlab.rb 将eternal_url 'http://gitlab.example.com' 改为https nginx['redirect_http_to_https'] = false 删除注释,改为true nginx['ssl_certificate'] = "etc/gitlab/ssl/#{node...}.crt" 改为 "/etc/gitlab/ssl/gitlab.example.com.cre" nginx['ssl_certificate_key'] = "etc/gitlab/ssl/#{node...}.key" 改为 "/etc/gitlab/ssl/gitlab.example.com.key" nginx['ssl_dhparam'] = "/etc/gitlab/ssl/dhparams.pem"
# gitlab-ctl reconfigure
# vi /var/opt/gitlab/nginx/conf/gitlab-http.conf server_name下面添加rewrite ^(.*)$ https://$host$1 permanent # gitlab-ctl restart

修改本地hosts文件

vmware-ip(虚拟机ip地址)	gitlab.example.com

浏览器访问,登录修改admin账号密码

当然还可以通过docker来安装,不过对于gitlab这种服务,并不推荐使用docker,因为其服务依赖系统资源强,而且你的仓库也不希望一个简单的docker rm命令就可以被连带销毁掉。

DevOps元素周期表——1号元素 Gitlab的更多相关文章

  1. DevOps元素周期表—2号元素Kibana

    Kibana 是一款开源的数据分析和可视化平台,它是 Elastic Stack 成员之一,设计用于和 Elasticsearch 协作.您可以使用 Kibana 对 Elasticsearch 索引 ...

  2. DevOps之持续集成Jenkins+Gitlab

    一.什么是DevOps DevOps(英文Development(开发)和Operations(技术运营)的组合)是一组过程.方法与系统的统称,DevOps是一组最佳实践强调(开发.运维.测试)在应用 ...

  3. 基于 HTML5 Canvas 的元素周期表展示

    前言 之前在网上看到别人写的有关元素周期表的文章,深深的勾起了一波回忆,记忆里初中时期背的“氢氦锂铍硼,碳氮氧氟氖,钠镁铝硅磷,硫氯氩钾钙”.“养(氧)龟(硅)铝铁盖(钙),哪(钠)家(钾)没(镁)青 ...

  4. GitLab CI/CD的官译【原】

    CI / CD方法简介 软件开发的持续集成基于自动执行脚本,以最大限度地减少在开发应用程序时引入错误的可能性.从新代码的开发到部署,它们需要较少的人为干预甚至根本不需要干预. 它涉及在每次小迭代中不断 ...

  5. 基于 webGL 的元素周期表 3D 交互展示

    前言 之前在网上看到别人写的有关元素周期表的文章,深深的勾起了一波回忆,记忆里初中时期背的“氢氦锂铍硼,碳氮氧氟氖,钠镁铝硅磷,硫氯氩钾钙”.“养(氧)龟(硅)铝铁盖(钙),哪(钠)家(钾)没(镁)青 ...

  6. 【DevOps敏捷开发动手实验】开源文档 v2015.2 stable 版发布

    Team Foundation Server 2015 Update 2版本终于在2周前的//Build 2016大会上正式发布了,借这个东风,小编也完成了[DevOps敏捷开发动手实验]开源文档的第 ...

  7. SyntaxHighlighter行号显示错误问题解决方案

    SyntaxHighlighter是根据代码中的换行符分配行号的.但是,如果一行代码或者注释比较长,在页面显示时需要分成多行显示,会出现行号对不上的问题,像这样: 通过设置CSS强制不换行,可以保证行 ...

  8. 【算法笔记】B1008 数组元素循环右移问题

    1008 数组元素循环右移问题 (20 分) 一个数组A中存有N(>0)个整数,在不允许使用另外数组的前提下,将每个整数循环向右移M(≥0)个位置,即将A中的数据由(A​0​​A​1​​⋯A​N ...

  9. 使用Appium进行微信公众号自动化测试

    查看Android的webview视图版本:手机链接电脑后在电脑Chrome打开页面chrome://inspect/#devices查看Android的Chrome内核版本     下载与该版本相对 ...

随机推荐

  1. 修改linux操作系统的时间可以使用date指令 运维系统工程师必会技术

    修改linux的时间可以使用date指令 修改日期: 时间设定成2009年5月10日的命令如下: date -s 05/10/2009 修改时间: 将系统时间设定成上午10点18分0秒的命令如下. d ...

  2. 数据库系统第一章【绪论】(B站视频)

    目录 数据库系统第一章[绪论](B站视频) 一.绪论 数据库的四大基本概念 数据 数据库 数据库管理系统 主要功能 数据库系统 数据管理 我的理解 数据系统的特点 数据结构化 数据系统的共享性 数据独 ...

  3. js转换人民币金额 小写到大写

    u.bigNum=function(n) { var fraction = ['角', '分']; var digit = ['零', '壹', '贰', '叁', '肆', '伍', '陆', '柒 ...

  4. 《Offer一箩筐》求职之前你必须知道的 4 件事!!

    「MoreThanJava」 宣扬的是 「学习,不止 CODE」. 如果觉得 「不错」 的朋友,欢迎 「关注 + 留言 + 分享」,文末有完整的获取链接,您的支持是我前进的最大的动力! Hi~ 这里是 ...

  5. myeclipse前端界面乱码

    框起来的值默认的格式是ISO-8859-1,改为UTF-8

  6. 如何在本机启动两个tomcat

    Tomcat下载地址:http://ftp.kddilabs.jp/infosystems/apache/tomcat/tomcat-9/v9.0.30/bin/apache-tomcat-9.0.3 ...

  7. linux基础:控制台

    图形界面切换至命令行界面:ctrl+alt+F1~F6 命令行界面切换至图形界面:startx linux一共有7个运行级别,可查看/etc/inittab文件: 0:停机(记住不要把initdefa ...

  8. python修改excel内容

    前提:安装pip install xlutils和xlrd 思路:xlrd用来读数据,xlutils用来修改数据:先打开excel——读到原来的sheet页——生成可以修改的excel和sheet页— ...

  9. node 进阶 | 通过node中如何捕获异常阐述express的特点

    node如何捕获异常 node基于js的单线程,有了非阻塞异步回调的概念,但是在处理多个并发连接时,并发环境要求高,最重要的是单线程,单核CPU,一个进程crash则web服务都crash,但是为什么 ...

  10. CSS 常见样式 特殊用法 贯穿线&徽章&箭头

    ### 贯穿渐变线,中间插值- 如图: > ![在这里插入图片描述](https://img-blog.csdnimg.cn/20190427200554843.png) ![在这里插入图片描述 ...