实际操作

准备linux初始环境

关闭防火墙

systemctl stop firewalld

开机自己关闭

systemctl disable firewalld

设置安全配置 为关闭

vim /etc/sysconfig/selinux

重启虚拟机

reboot

查看安全策略是否关闭

getenforce

安装gitlab依赖软件

yum install curl policycoreutils openssh-server openssh-clients postfix

下载gitlab 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

yum -y install gitlab-ce

需要等一段时间

手动配置ssl证书

mkdir -p /etc/gitlab/ssl

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

cd /etc/gitlab/ssl

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

进如ssl安装向导

cn

bj

bj

空格

空格

gitlab.example.com

735761545@qq.com

447728

空格

安装完成,创建好了ssl密钥和证书

在ssl目录下ll

可以看到ssl密钥和证书

利用ssl密钥和证书创建签署证书

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"

利用openssl签署pem 证书

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

更改ssl下的所有证书权限

chmod 600 *

配置证书到gitlab配置文件中

vim /etc/gitlab/gitlab.rb

搜寻并更改注释并为true

更改对应的路径

gitlab-ctl reconfigure 初始化gitlab相关服务配置

找到gitlab下的ningx反向代理工具

vim /var/opt/gitlab/nginx/conf/gitlab-http.conf

搜索 /server_name 并添加

rewrite ^(.*)$ https://$host$1 permanent;

gitlab-ctl restart 重启gitlab使服务生效

windows本机host

10.110.16.20 gitlab.example.com #这里对应的是虚拟的ip

更改管理员密码 密码需要8位

管理员登录 账号:root 密码:447728wang

创建新项目

建好第一个gitlab项目

复制 地址

克隆到本地

git config --global  --list 查看当前用户(global)配置

git config --system --list 查看系统config

禁用ssl认证

git config --global http.sslVerify false

下载项目到本地

git -c http.sslVerify=false clone https://gitlab.example.com/root/test-scond.git
认证失败

解决方案:

git config --system --unset credential.helper

之后再进行git操作时,弹出用户名密码窗口,输入即可

本地修改项目上传,需要设置

git config --global user.name "litifeng"

git config --global user.email "litifeng@example.com"

git -c http.sslVerify=false push origin master


上传成功

gitlab应用

点击实例查看实例使用信息

cpu个数/内存使用情况/硬盘使用情况

日志

application.log存放的是gitlab的相关操作

production.log记录访问记录

健康状况
  

创建权限管理系统

创建项目成员

创建

成功

创建管理员

同上

绑定项目

进入项目

创建开发者

添加

同样,配置项目领导权限

给账号重新设置密码

修改完 进行相关职员的代码拉取

删除之前拉取的代码

创建新分支,并同步到远程仓库

登录dev(相对应的开发者)账号,创建合并申请,

提交给lead之后,到lead账号里,合并

完全卸载删除gitlab

1、停止gitlab

gitlab-ctl stop

2、卸载gitlab(注意这里写的是gitlab-ce)

rpm -e gitlab-ce

3、查看gitlab进程

ps aux | grep gitlab

4、杀掉第一个进程(就是带有好多.............的进程)

kill -9 18777

杀掉后,在ps aux | grep gitlab确认一遍,还有没有gitlab的进程

5、删除所有包含gitlab文件

find / -name gitlab | xargs rm -rf

Jenkins+Ansible+Gitlab自动化部署三剑客-gitlab本地搭建的更多相关文章

  1. 自动化部署三剑客 gitlab + ansible + jenkins

    http://www.showerlee.com/archives/1880 https://edu.51cto.com/center/course/lesson/index?id=280700 Gi ...

  2. Jenkins+Ansible+Gitlab自动化部署三剑客

    一.gitlab安装 环境:centos 7 x64 1.关闭防火墙 systemctl stop firewalld systemctl disable firewalld 2.禁用selinux ...

  3. Jenkins+Ansible+Gitlab自动化部署三剑客-Ansible本地搭建

    可以通过git bash连接linux 关闭防火墙,禁用防火墙开机启动,并更爱selinux文件,重启 重新登录并检查禁用 getenforce 安装git yum -y install git ns ...

  4. Jenkins+Ansible+Gitlab自动化部署三剑客-Jenkins本地搭建

    后面需要shell基础,目前没有,等有了,再更

  5. Jenkins+maven+gitlab自动化部署之gitLab搭建(二)

    Gitlab我们这里采用docker方式部署,详细请参考:Docker部署Gitlab11.10.4

  6. Jenkins Ansible GitLab 自动化部署

    Jenkins Ansible GitLab 自动化部署 DevOps https://www.cnblogs.com/yangjianbo/articles/10393765.html https: ...

  7. Linux-GitLab+Jenkins持续集成+自动化部署

    GitLab+Jenkins持续集成+自动化部署 什么是持续集成? (1)Continuous integration (CI) 持续集成是一种软件开发实践,即团队开发成员经常集成他们的工作,通常每个 ...

  8. Jenkins+Docker+Git 自动化部署

    Jenkins+Docker+Git 自动化部署图文教程 https://blog.csdn.net/qq_38252039/article/details/89791247 前言: 通过几天的学习和 ...

  9. Windows+.Net Framework+svn+IIS在Jenkins上的自动化部署入门

    关于Jenkins的使用及安装,上一篇文章我已经介绍过了,Windows+.NetCore+git+IIS在Jenkins上的自动化部署入门.这篇主要是在jenkins如何安装SVN和MSBuild. ...

随机推荐

  1. SVN的工作原理及流程手册

    1.什么是SVN ? SVN是Subversion的简称,是一个开放源代码的版本控制系统,相较于RCS.CVS,它采用了分支管理系统,它的设计目标就是取代CVS. 互联网上很多版本控制服务已从CVS迁 ...

  2. 【C#】list 去重(转载)

    Enumerable.Distinct 方法 是常用的LINQ扩展方法,属于System.Linq的Enumerable方法,可用于去除数组.集合中的重复元素,还可以自定义去重的规则. 有两个重载方法 ...

  3. [PHP] 算法-选择排序的PHP实现

    选择排序: 1.数组分成前后两个部分,前部分是排序的,后部分是无序的 2.两层循环,先假定当前循环的第一个索引为最小值,内部循环找比该索引还小的值,找到交换 for i;i<len;i++ mi ...

  4. 月薪25K的90后程序员,他们都经历了什么?

    如果说薪资是检验一家公司对程序员认可的标准,那么年纪轻轻就能达到月薪 25K,一定程度上说明了公司对他创造的价值的认可. 深访10+ 名月薪25K的程序员,发现他们最常见的三种成长途径是…… 在公司发 ...

  5. [leetcode](4.21)3. 最长重复子串

    给定字符串 S,找出最长重复子串的长度.如果不存在重复子串就返回 0. 示例 1: 输入:"abcd" 输出:0 解释:没有重复子串. 示例 2: 输入:"abbaba& ...

  6. laravel接值 get post

    laravel使用一种简单的方式来访问用户提交的信息. 你可以用统一的方式来访问用户提交的信息,而不用为用户提交信息的方式操心. 引用类:use Illuminate\Support\Facades\ ...

  7. es6 语法 (函数扩展)

    //函数参数默认值(more值后不能有参数) { function test(x,y = 'world'){ console.log('默认值',x,y); } test('hello');// he ...

  8. Nodejs全局/缓存路径配置

    $ npm config set prefix "D:\Program Files\nodejs\node_global" $ npm config set cache " ...

  9. 极简】如何在服务器上安装SSL证书?

    本文适合任何人了解,图形化操作.下面以腾讯云为例,并且服务器(linux)也安装了宝塔面板. 1.登陆腾讯云账号进入控制台,找到SSL的产品 2.按要求申请并填写表单,记住私钥密码 3.提交后,待腾讯 ...

  10. Android 四大组件之broadcast的理解

    Android广播的两种类型: 1.静态广播 2.动态广播 静态注册广播: Manifeast中的代码块: <receiver android:name=".broadcast.MyS ...