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














实际操作
准备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本地搭建的更多相关文章
- 自动化部署三剑客 gitlab + ansible + jenkins
http://www.showerlee.com/archives/1880 https://edu.51cto.com/center/course/lesson/index?id=280700 Gi ...
- Jenkins+Ansible+Gitlab自动化部署三剑客
一.gitlab安装 环境:centos 7 x64 1.关闭防火墙 systemctl stop firewalld systemctl disable firewalld 2.禁用selinux ...
- Jenkins+Ansible+Gitlab自动化部署三剑客-Ansible本地搭建
可以通过git bash连接linux 关闭防火墙,禁用防火墙开机启动,并更爱selinux文件,重启 重新登录并检查禁用 getenforce 安装git yum -y install git ns ...
- Jenkins+Ansible+Gitlab自动化部署三剑客-Jenkins本地搭建
后面需要shell基础,目前没有,等有了,再更
- Jenkins+maven+gitlab自动化部署之gitLab搭建(二)
Gitlab我们这里采用docker方式部署,详细请参考:Docker部署Gitlab11.10.4
- Jenkins Ansible GitLab 自动化部署
Jenkins Ansible GitLab 自动化部署 DevOps https://www.cnblogs.com/yangjianbo/articles/10393765.html https: ...
- Linux-GitLab+Jenkins持续集成+自动化部署
GitLab+Jenkins持续集成+自动化部署 什么是持续集成? (1)Continuous integration (CI) 持续集成是一种软件开发实践,即团队开发成员经常集成他们的工作,通常每个 ...
- Jenkins+Docker+Git 自动化部署
Jenkins+Docker+Git 自动化部署图文教程 https://blog.csdn.net/qq_38252039/article/details/89791247 前言: 通过几天的学习和 ...
- Windows+.Net Framework+svn+IIS在Jenkins上的自动化部署入门
关于Jenkins的使用及安装,上一篇文章我已经介绍过了,Windows+.NetCore+git+IIS在Jenkins上的自动化部署入门.这篇主要是在jenkins如何安装SVN和MSBuild. ...
随机推荐
- Tomcat服务器为java项目配置顶级域名
修改端口, Tomcat服务器下conf/server.xml文件 把端口号更改为80 解释:输入域名时默认进入80端口,如果没修改则需要输入端口号才能进入. Eg:www.xxx.com: ...
- js数据类型有哪些,js属性和方法的归属,
1.js的数据类型有哪些? 2.全局方法和全局属性? 一 1.js的本质就是处理数据,数据来自后台的数据库.所以变量就起到一个临时存储数据的作用. ECMAScript 制定了js的数据类型. 数据类 ...
- 汇编语言--微机CPU的指令系统(五)(位操作指令)
(6) 位操作指令 1.位扫描指令(Bit Scan Instruction) 指令的格式:BSF/BSR Reg, Reg/Mem ;80386+ 受影响的标志位:ZF 位扫描指令是在第二个操作数中 ...
- 5.枚举和注解_EJ
第30条: 用enum代替int常量 枚举类型是指由一组固定的常量组成合法值得类型.例如一年中的季节,太阳系中的行星或一副牌中的花色.在开发中我们经常在类使用static final来定义一个int常 ...
- javascript算法-插入排序
原理跟java那篇文章一样,只是语言不同而已 var InsertSort = function( _n ){ this.maxSize = _n; this.arr = []; this.init ...
- JavaScript开发工具简明历史
译者按: JavaScript开发要用到的工具越来越多,越来越复杂,为什么呢?你真的弄明白了吗? 原文: Modern JavaScript Explained For Dinosaurs 为了保证可 ...
- IO学习二(节点流)
1.流的分类 按照数据流向的不同:输入流和输出流 按照处理数据的单位不同:字节流((非文本文件)视频.音频.图像).字符流(文本文件) 按照角色的不同:节点流和处理流 2.IO体系 抽象基类 节点流 ...
- 【代码笔记】Web-JavaScript-JavaScript switch语句
一,效果图. 二,代码. <!DOCTYPE html> <html> <head> <meta charset="utf-8"> ...
- 【读书笔记】iOS-使用钥匙串保护数据
一,将应用从设备上删除时,并不会删除其钥匙串项,这使得调试工作困难得多.模拟器有一个Reset Contents and Settings选项,可用于将钥匙串项移除.因此,强烈建议在模拟器上确定Key ...
- Python 实现批量从不同的Linux服务器下载文件
基于Python实现批量从不同的Linux服务器下载文件 by:授客 QQ:1033553122 实现功能 1 测试环境 1 使用方法 1 1. 编辑配置文件conf/file_for_downl ...
