Gitlab+Jenkins学习目录】的更多相关文章

Gitlab+Jenkins基础篇 Gitlab+Jenkins学习之路(一)之Git基础 Gitlab+Jenkins学习之路(二)之gitlab部署 Gitlab+Jenkins学习之路(三)之gitlab权限管理--issue管理 Gitlab+Jenkins学习之路(四)之gitlab备份和恢复 Gitlab+Jenkins学习之路(五)之git merge和git rebase的区别 Gitlab+Jenkins学习之路(六)之Jenkins部署.升级和备份 Gitlab+Jenkin…
一.什么是持续集成? (1)Continuous integration(CI) 持续集成是一种软件开发实践,即团队开发成员经常集成他们的工作,通常每个成员至少集成一次,也就意味着每天可能会发生多次集成.每次集成都通过自动化的构建(包括编译,发布,自动化测试)来验证,从而尽快地发现集成错误.许多团队发现这个过程可以大大减少集成的问题,让团队能够更快的开发内聚的软件. (2)没有持续集成 项目做模块集成的时候,发现很多借口都不通==>浪费大量时间 需要手动去编译打包最新的代码==>构建过程不透明…
一.什么是Maven maven是一个项目管理和综合工具.Maven提供给开发人员构建一个完整的生命周期框架. 开发团队可以自动完成该项目的基础设施建设,Maven使用标准的目录结构和默认构建生命周期 maven是属于Apache的开源项目 maven主要服务于java平台的构建.依赖管理.项目管理. 二.手动安装MAVEN ()下载maven [root@linux-node2 ~]# wget http://mirrors.hust.edu.cn/apache/maven/maven-3/3…
一.新建一台虚拟机安装tomcat ()安装JDK 官网下载jdk:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html 下载jdk8,放到/usr/local/src/目录下 [root@linux-node3 ~]# tar -zxvf jdk-8u151-linux-x64.tar.gz [root@linux-node3 ~]# .0_151 /usr/local/jdk1.…
一.部署gitlab gitlab部署我采用的是docker的方式,这种方式的优势是方便:之前部署过非docker的gitlab,需要配置安装许多东西,太麻烦,还是docker部署方便,从官网pull下来,直接已启就ok了: 官方gitlab容器链接:https://docs.gitlab.com/omnibus/docker/README.html 1.export GITLAB_HOME=/usr/local/gitlab 先配置临时环境变量,这步可省略,但是第二步要写绝对路径: 2.doc…
目录 一.环境说明和准备 1.环境说明 2.服务器准备工作 二.发布脚本编写 1.自动化部署流程设计 2.自动化部署脚本编写 三.发布测试 1.开发机和github添加ssh信任 2.克隆项目到开发机进行开发测试 3.修改index.html文件 4.提交代码 5.发布代码 6.测试访问 7.回滚测试 一.环境说明和准备 1.环境说明 主机名 IP地址 角色 系统 deploy-server 192.168.56.12 发布 Centos 7.4 web 192.168.56.13 web服务器…
1.GIT基础    GIT是一个分布式版本管理系统,速度快,适合大规模,跨地区多人协同开.SVN是一个集中式版本管理系统. (1)GIT生态 GIT分布式版本管理系统 Gitlab git私库解决方案 Github git公有库解决方案  (2)Git安装 Centos: yum install -y git Ubuntu: apt-get install git Windows安装git bash Linux编译安装 注意不要使用git 1.8以下版本,推荐使用2.7版本 ①编译安装git[…
gitlab的备份和恢复 (1)创建备份目录,并授权 [root@linux-node1 ~]# mkdir /data/backups/gitlab -p [root@linux-node1 ~]# chown -R git.git /data/ [root@linux-node1 ~]# ll /data/ -d drwxr-xr-x git git Dec : /data/ (2)修改gitlab配置 [root@linux-node1 ~]# vim /etc/gitlab/gitlab…
使用git+jenkins实现持续集成 Step1:构建一个自由风格的php-deploy Step2:Gernal配置,丢弃旧的构建,防止jenkins构建较多之后变臃肿 Step3:源码管理:这里使用git插件,也可以使用svn插件 将git路径存在这里还需要权限认证,否则会出现error .jenkins服务器上生成SSH-Key [root@linux-node2 ~]# yum install -y git [root@linux-node2 ~]# ssh-keygen Genera…
思路图: 一.下载gitlab plugin jenkins-->系统管理-->管理插件-->下载并安装gitlab plugin 二.配置gitlab认证 路径:Jenkins-->Credentials-->System-->Global credentials(unrestricted)-->Add Credentials 1.Kind选择Gitlab API token 2.其中API token填写gitlab中有库权限的账号 3.ID填写用户账号 gi…
1.安装依赖及gitlab [root@linux-node1 ~]# yum install -y curl policycoreutils openssh-server openssh-clients postfix [root@linux-node1 ~]# systemctl start postfix 2.安装gitlab 由于国内网络偏慢,这里使用清华大学的镜像源进行安装gitlab-ce [root@linux-node1 ~]# cat /etc/yum.repos.d/gitl…
1.创建Group,User,Project 创建一个组,组名为java Group path http://192.168.56.11/java Visibility Level: #为权限级别,一般使用Private Private Internal Public 创建一个PM的用户作为项目管理者并加入到java组内 创建一个项目: 创建dev1和dev2的用户作为开发者,并加入到项目中  2.测试dev1,dev2拉取代码库 ()生成ssh-key [root@linux-node1 ~]…
一.Jenkins的远程管理 Jenkins的远程管理方式包含: Shell ssh SSH Plugin ansible.saltstack (1)Shell ssh在项目构建时,jenkins使用了Execute Shell直接对远程主机操作,同步了代码到主机192.168.56.11上,并且可以增加对远程机器进行操作.例如执行某个脚本:ssh root@192.168.53.11 "/bin/sh /data/scripts/****.sh "如图: (2)SSH plugin除…
一.Jenkins按角色授权 当一个公司的开发分为多个组别,或者是多个项目等等.用于公司内部测试,让开发人员自行构建测试,此时不可能让所有的开发都在公用一个构建,这样变得很混乱,为了解决这一问题,jenkins也提供了角色授权的机制.每个开发有着对应的账号和权限,可以自行新建,构建,测试,发布等.角色授权需要安装的插件:Role-based Authorization Strategy (1)系统配置系统管理-->Configure Global Security-->访问控制-->授权…
命令行测试 [root@linux-node1 ~]# mkdir testing [root@linux-node1 ~]# [root@linux-node1 ~]# cd testing/ [root@linux-node1 testing]# [root@linux-node1 testing]# git init Initialized empty Git repository in /root/testing/.git/ [root@linux-node1 testing]# " &…
1.什么是Nexus? 在前面进行maven项目的构建中,可以看到在构建的过程中需要安装maven的依赖插件,如图: 而在maven的默认配置中是在官网的中央仓库和第三方的maven仓库进行下载,速度偏慢.这里提供阿里云的maven插件库(http://maven.aliyun.com/nexus/#view-repositories),可以在/data/apache-maven-3.5.2/conf/settings.xml 配置文件中进行修改. 在日常的开发构建中,我们也可以自己搭建一个私有…
持续集成 gitlab+jenkins(pipeline)实现代码自动上线 环境准备:Centos7.6版本ip:192.168.0.13 主机名:gitip:192.168.0.23 主机名:jenkinsip:192.168.0.15 主机名:web01关闭防火墙关闭selinux分发公钥使两两主机间可以免密码连通  192.168.0.13主机上 1.安装gitlab #安装gitlab要先安装如下依赖包 [root@git git_data]# yum install -y curl p…
通过前面两篇文章,我们已经有了一个"嗷嗷待哺"的K8s集群环境,也对相关的概念与组件有了一个基本了解(前期对概念有个印象即可,因为只有实践了才能对其有深入理解,所谓"纸上得来终觉浅,绝知此事要躬行"),本文从实践角度介绍如何结合我们常用的Gitlab与Jenkins,通过K8s来实现项目的自动化部署,示例将包括基于SpringBoot的服务端项目与基于Vue.js的Web项目. 本文涉及到的工具与技术包括: Gitlab -- 常用的源代码管理系统 Jenkins,…
目录 一.今天想干啥? 二.今天干点啥? 三.今天怎么干? 3.1.常规打法 3.2.不走寻常路 四.开干吧! 4.1.工具链部署 4.2.网络配置 4.3.验证工具链部署结果 4.3.1.GitLab 4.3.2.Jenkins 4.3.3.Harbor 4.4.流水线配置 4.5.验证流水线配置结果 五.总结 一.今天想干啥? 今天我们来聊聊如何快速落地"GitLab + Jenkins + Harbor 工具链". 请注意这里的关键词:快速(有多快呢?我希望这个时间是5分钟.)…
安装了GitBook,内网使用,没法用上gitbook的网页. 用gitbook serve只能展示一本书,而且也不利于长期维护. 于是使用gitlab,jenkins,和nginx配合gitbook使用. 基本的流程是这样的,每本书作为项目托管到gitlab上,每次提交,gitlab会触发jenkins,jenkins会把仓库的内容拉下来,gitbook build 并复制到Web server(Nginx)的目录下,并加上可读权限,然后局域网内的人就都可以直接访问了. 下面记录过程 首先机器…
总体流程: 在开发机开发代码后提交到gitlab 之后通过webhook插件触发jenkins进行构建,jenkins将代码打成docker镜像,push到docker-registry 之后将在k8s-master上执行rc.service的创建,进而创建Pod,从私服拉取镜像,根据该镜像启动容器 在第四十三章 微服务CICD(5)- gitlab + jenkins + docker中,实现了前两步.本节实现第三步 一.打通jenkins与k8s-master两台机器之间的ssh无密码访问…
Jenkins 的内容网站蛮多的,但是一开始我看起来确实很费劲.似乎好多东西都是悬空的,没有把底层的信息交代清楚. 我把自己对于 Jenkins 的探索过程记录下来,如下. 目录 Jenkins 学习笔记(一):我对 Jenkins 的宏观认识 Jenkins 学习笔记(二):很简单的发布一次 Jenkins 学习笔记(三):我们的 Java 项目是这么发布的…
整个项目的框架为: gitlab的安装与使用(Centos7) gitlab的安装 新建yum源 vim /etc/yum.repos.d/gitlab-ce.repo [gitlab-ce] name=gitlab-ce baseurl=http://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7 repo_gpgcheck=0 gpgcheck=0 enabled=1 gpgkey=https://packages.gitlab.com/gpg.…
对本文进行格式整理,url: https://www.cnblogs.com/huandada/p/9969234.html 整个项目的框架为: 1.gitlab的安装(Centos7) 新建/etc/yum.repos.d/gitlab-ce.repo,添加以下内容: [gitlab-ce]name=gitlab-cebaseurl=http://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7repo_gpgcheck=0gpgcheck=0ena…
gitlab+jenkins自动化部署环境搭建 环境说明 系统 主机 IP 安装软件 CentOS 7 study-1 192.168.100.51 gitlab.git CentOS 7 study-2 192.168.100.52 jdk.maven.jenkins.git CentOS 7 study-3 192.168.100.53 tomcat.mysql.jenkins.git 所有系统的selinux和iptables都已经关闭,同时需要做好时间同步,机器的hosts文件如下: 1…
学习博客:http://www.cnblogs.com/zz0412/tag/jenkins/   https://jenkins.io/doc/   http://www.cnblogs.com/horizonli/tag/jenkins/ 1. 传统网站部署的流程 传统的网站部署,大家在运维过程中,网站部署是运维的工作之一,网站部署的流程大致分为: 需求分析—原型设计—开发代码—提交测试—内网部署—确认上线—备份数据—外网更新-最终测试,如果发现外网部署的代码有异常,需要及时回滚.(如下图所…
总体流程: 在开发机开发代码后提交到gitlab 之后通过webhook插件触发jenkins进行构建,jenkins将代码打成docker镜像,push到docker-registry 之后将在k8s-master上执行rc.service的创建,进而创建Pod,从私服拉取镜像,根据该镜像启动容器 在第四十三章 微服务CICD(5)- gitlab + jenkins + docker中,实现了前两步.本节实现第三步 一.打通jenkins与k8s-master两台机器之间的ssh无密码访问…
说明: Gitlab.Jenkins.生产服务器.测试服务器上都需要安装Git. 一.安装Gitlab 1.主机配置 IP: 10.10.10.105 OS: CentOs7. Gitlab版本:gitlab-ce--ce..el6.x86_64 2.关闭防火墙 systemctl stop firewalld 3.下载Gitlab 清华大学开源镜像站: https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/ 4.安装依赖项(可根据情况选择性操作) yum…
构建gitlab+Jenkins+harbor+kubernetes的DevOps持续集成持续部署环境 整个环境的结构图. 一.准备工作 gitlab和harbor我是安装在kubernetes集群外的一台主机上的. 1.1.设置镜像源 docker-ce.repo [root@support harbor]# cat /etc/yum.repos.d/docker-ce.repo [docker-ce-stable] name=Docker CE Stable - $basearch base…
一.概述 GitLab是一个代码仓库,用来管理代码.Jenkins是一个自动化服务器,可以运行各种自动化构建.测试或部署任务.所以这两者结合起来,就可以实现开发者提交代码到GitLab,Jenkins以一定频率自动运行测试.构建和部署的任务,帮组开发团队更高效的集成和发布代码. 下面是我最近安装GitLab+Jenkins环境的一个过程,记录下来,以备日后参考. 另外,这篇文章虽然很长,讲得很琐碎,但是仍有未能描述清楚的地方,如果按照这篇文章未能搭建成功,请耐心分析,也可从官方文档 找找灵感,继…