一、安装Gitlab前系统预配置准备工作

操作系统:centos 7.3

1、关闭firewalld防火墙

  #systemctl stop firewalld    //关闭防火墙

  #systemctl disable firewalld  //禁止防火墙开机启动

2、关闭selinux并重启系统(关闭强制访问控制安全策略,可以用getenforce查看selinux状态。)

  #vi /etc/sysconfig/selinux

  ...

  SELINUX=disabled

  ...

  #reboot

二、安装Omnibus Gitlab-ce package

  可以先将yum源切换成国内的yum源,参考:https://opsx.alibaba.com/mirror,点击对应操作系统的帮助,有具体替换的方法。

1、安装Gitlab组件

  #yum -y install cur policycoreutils openssh-server openssh-clients postifx

2、配置Yum仓库(下载gitlab yum仓库源)

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

3、启动postfix邮件服务

  #systemctl start postfix && systemctl enable postfix

4、安装Gitlab-ce社区版

  #yum install -y gitlab-ce

三、配置Gitlab

1、先手动创建一个ssl目录

  #mkdir -p /etc/gitlab/ssl

2、利用Openssl创建创建私有密钥

  #openssl genrsa -out "/etc/gitlab/ssl/gitlab.example.com.key" 2048

3、使用刚才创建的私有密钥创建csr证书

  #openssl req -new -key "/etc/gitlab/ssl/gitlab.example.com.key" -out "/etc/gitlab/ssl/gitlab.example.com.csr"

4、创建crt证书

  #openssl x509 -req -days 3650 -in "/etc/gitlab/ssl/gitlab.example.com.csr" -signkey "/etc/gitlab/ssl/gitlab.example.com.key" -out "/etc/gitlab/ssl/gitlab.example.com.crt"

5、创建pem证书

  #openssl dhparam -out /etc/gitlab/ssl/dhparams.pem 2048

6、将/etc/gitlab/ssl下的证书修改为600权限

  #chmod 600 /etc/gitlab/ssl/*

7、修改gitlab配置文件vi /etc/gitlab/gitlab.rb

  将external_url 'http://gitlab.example.com'的http修改为https

  将# nginx['redirect_http_to_https'] = false的注释去掉,修改为nginx['redirect_http_to_https'] = true

  将# nginx['ssl_certificate'] = "/etc/gitlab/ssl/#{node['fqdn']}.crt"修改为# nginx['ssl_certificate'] = "/etc/gitlab/ssl/gitlab.example.com.crt"

  将# nginx['ssl_certificate_key'] = "/etc/gitlab/ssl/#{node['fqdn']}.key"修改为# nginx['ssl_certificate_key'] = "/etc/gitlab/ssl/gitlab.example.com.key"

  将# nginx['ssl_dhparam'] = nil 修改为# nginx['ssl_dhparam'] = /etc/gitlab/ssl/dhparams.pem

8、初始化gitlab所有相关配置(比较耗时)

  #gitlab-ctl reconfigure

9、修改gitlab的代理配置文件(/var/opt/gitlab/nginx/conf/gitlab-http.conf)

  #vi /var/opt/gitlab/nginx/conf/gitlab-http.conf

  修改配置项在找到server_name,在server_name下添加如下配置内容:rewrite ^(.*)$ https://$host$1 permanent;

  重启gitlab,使配置生效

  #gitlab-ctl restart

10、在访问的机器上修改hosts文件

  将gitlab服务器的地址添加上gitlab.example.com的配置

  然后访问https://gitlab.example.com

/etc/gitlab/ssl/gitlab.example.com.key

GitLab安装部署与管理的更多相关文章

  1. 一文搞懂GitLab安装部署及服务配置

    GitLab安装部署 Git,GitHub,GitLab,这三个东东长得好像呀,都是个啥? Git是Linus Torvalds(如果不知道这位大神是谁,请出门左转,慢走不送~)为了帮助管理Linux ...

  2. DevOps实践之Gitlab安装部署

    All GitLab packages are posted to our package server and can be downloaded. We maintain five repos: ...

  3. Gitlab安装部署及基础操作

      环境说明 系统版本 CentOS 7.2 x86_64(较新版本的gitlab集成了更多功能,顺利运行起来的硬件要求较高,这里给了3G内存) 软件版本 gitlab-ce-10.8.4 GitLa ...

  4. gitlab安装部署汉化

    1.获取gitlab汉化包(要部署非汉化版,可以跳过这一块内容) 说明:gitlab中文社区版的项目,v7-v8.8是由Larry Li发起的“GitLab 中文社区版项目”(https://gitl ...

  5. CentOS 7 环境下 GitLab安装部署以及账号初始化

    1. 安装相关依赖 yum install curl policycoreutils openssh-server openssh-clients -y # 确保sshd启动(正常情况下, sshd是 ...

  6. gitlab安装部署

    参考文章: https://gitlab.com/gitlab-org/gitlab-recipes/tree/master/install/centos http://www.xsjxmx.com/ ...

  7. Solr7 安装部署 管理界面介绍

    Solr7 安装部署 管理界面介绍 本章重点介绍CentOS 安装部署Solr7 ,Solr的管理界面介绍,添加核心Core配置,Dataimport导入数据,Documents 在线维护索引,Que ...

  8. GitLab - 安装并启动GitLab

    1 - GitLab安装 1.1 信息确认 [Anliven@node102 ~]$ uname -a Linux node102 3.10.0-957.el7.x86_64 #1 SMP Thu N ...

  9. OpenStack安装部署管理中常见问题解决方法

    一.网络问题-network 更多网络原理机制可以参考<OpenStack云平台的网络模式及其工作机制>. 1.1.控制节点与网络控制器区别 OpenStack平台中有两种类型的物理节点, ...

随机推荐

  1. 使用 Sublime Text 做 Javascript 编辑器 - 集成 JSHint 问题检测工具

    JSHint(jshint.com)是 Javascritp 代码质量工具,可以帮助开发人员发现 Javascript 代码中的错误和潜在的问题.jshint.com 是一个在线编辑器,我们可以为 S ...

  2. ERROR [IM002] [Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认驱动程序

    在用c#生成应用程序的时候,读写dbf时,open方法出错 ERROR [IM002] [Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认驱动程序 以前这个程序是用着好 ...

  3. ES6中Class的继承关系

    es5实现中,每个对象都有__proto__属性(也就是关系图中[[prototype]]属性),指向对应的构造函数的prototype.Class 作为构造函数的语法糖,同时有prototype属性 ...

  4. 软工实践-Alpha 冲刺 (7/10)

    队名:起床一起肝活队 组长博客:博客链接 作业博客:班级博客本次作业的链接 组员情况 组员1(队长):白晨曦 过去两天完成了哪些任务 描述: 已经解决登录注册等基本功能的界面. 完成非功能的主界面制作 ...

  5. Alpha冲刺——第九天

    Alpha第九天 听说 031502543 周龙荣(队长) 031502615 李家鹏 031502632 伍晨薇 031502637 张柽 031502639 郑秦 1.前言 任务分配是VV.ZQ. ...

  6. Alpha 冲刺6

    队名:日不落战队 安琪(队长) 今天完成的任务 回收站前端界面. 明天的计划 查看个人信息界面. 还剩下的任务 信息修改前端界面. 设置界面. 遇到的困难 模拟机莫名其妙就崩了,调试了很久,后在队友的 ...

  7. C++ Primer Plus学习:第一章

    C++入门第一章:预备知识 C++简介 C++融合了三种不同的编程方式: C语言代表的过程性语言. C++在C语言基础上添加的类代表的面向对象语言. C++模板支持的泛型编程. C++简史 20世纪7 ...

  8. 【leetcode】215. Kth Largest Element in an Array

    Find the kth largest element in an unsorted array. Note that it is the kth largest element in the so ...

  9. phpMyadmin导入导出数据中出现的错误处理

    1 2

  10. python while 学习

    while True: reply = input('please input:') if reply == 'stop': break else: print (reply.upper())