***git自动化部署总结

在网上搜了一堆没用找到太仔细的教程,于是花费2天时间,自己研究了下。现在分享如下:

思路:利用crontab定时去去执行git pull脚本

首先,用git clone命令将中央库的代码下载到阿里云

git clone https://username:[email protected]/xapp/xserver.git  xm

第二步、在项目目录  /opt/lampp/htdocs/xm  下创建一个脚本 xm-pull.sh ,内容如下:

#!/bin/bash
cd /opt/lampp/htdocs/xm
/usr/bin/git pull https://username:[email protected]/xapp/xserver.git  master:master

第三步、cd ~ 进入到个人目录,创建CRONTAB定时器文件 xm-cron

[[email protected] xm]# cd ~
[[email protected] ~]# ls
hello.txt  test-conf  xm-cron
[[email protected] ~]# vi xm-cron
* * * * * /bin/bash  /opt/lampp/htdocs/xm/xm-pull.sh

注:定时每隔一分钟去执行git pull脚本

第四步、开启执行CRONTAB定时器,并查看当前运行的crontab状态或日志

[[email protected] ~]# crontab -l
* * * * * /bin/bash  /opt/lampp/htdocs/xm/xm-pull.sh
[[email protected] ~]# tail -f /var/log/cron
Jun  3 11:24:01 iZ254lfyd6nZ CROND[10636]: (root) CMD (/bin/bash  /opt/lampp/htdocs/xm/xm-pull.sh)
Jun  3 11:25:01 iZ254lfyd6nZ CROND[10689]: (root) CMD (/bin/bash  /opt/lampp/htdocs/xm/xm-pull.sh)
Jun  3 11:26:01 iZ254lfyd6nZ CROND[10742]: (root) CMD (/bin/bash  /opt/lampp/htdocs/xm/xm-pull.sh)

时间: 2024-10-09 21:07:56

***git自动化部署总结的相关文章

jenkins+git+maven搭建自动化部署项目环境

简介    折腾了两个晚上,趁着今晚比较有空,把jenkins+git+maven搭建自动化部署项目环境搭建的过程记录一下,这里我把github作为git的远程仓库(https://github.com/jacky-        lulu/cxf_demo-Maven-Webapp)     系统:centos6.5 maven: Apache Maven 3.3.9 git:git version 2.0.0 1.首先安装git,看以前另外一篇博客 http://www.cnblogs.co

Jenkins+Maven+Git搭建持续集成和自动化部署的配置手记(1)

前言    持续集成这个概念已经成为软件开发的主流,可以更频繁的进行测试,尽早发现问题并提示.自动化部署就更不用说了,可以加快部署速度,并可以有效减少人为操作的失误.之前一直没有把这个做起来,最近的新项目正好有机会,费了一番功夫总算搞好了,特此记录. 1. 开发环境    我这边建立的标准开发环境如下:    1. Maven做项目管理:    2. Git做代码管理:    3. SpringMVC+Spring+Mybatis搭建的程序框架:    4. Mysql作为数据存储,Druid做

运维与自动化系列④自动化部署基础与git

自动化部署基础与git 一:上一篇的代码是保存在本地,但是在生产环境当中是由版本控制进行代码管理,以便于发布代码和回滚,一般是使用gitlib比较多,另外还有用svn的公司,趋势是git为主,因此本文以git为使用对象 1.1:在git服务器新建一个web组和项目web-demo: 准备web页面并提交至git服务器(此处我用一个简单的html项目,大家如果没有现成的项目可以自己建一个简单的index.html页面即可):#准备提交代码目录 # mkdir /source/web/web-dem

Jenkins+Maven+Git搭建持续集成和自动化部署的配置手记

前言 持续集成这个概念已经成为软件开发的主流,可以更频繁的进行测试,尽早发现问题并提示.自动化部署就更不用说了,可以加快部署速度,并可以有效减少人为操作的失误.之前一直没有把这个做起来,最近的新项目正好有机会,费了一番功夫总算搞好了,特此记录. 1. 开发环境 我这边建立的标准开发环境如下: 1. Maven做项目管理: 2. Git做代码管理: 3. SpringMVC+Spring+Mybatis搭建的程序框架: 4. Mysql作为数据存储,Druid做连接池: 5. unitils作为测

Jenkins+Maven+Git搭建持续集成和自动化部署的配置

前言 持续集成这个概念已经成为软件开发的主流,可以更频繁的进行测试,尽早发现问题并提示.自动化部署就更不用说了,可以加快部署速度,并可以有效减少人为操作的失误.之前一直没有把这个做起来,最近的新项目正好有机会,费了一番功夫总算搞好了,特此记录. 1. 开发环境 我这边建立的标准开发环境如下: 1. Maven做项目管理: 2. Git做代码管理: 3. SpringMVC+Spring+Mybatis搭建的程序框架: 4. Mysql作为数据存储,Druid做连接池: 5. unitils作为测

Git实现自动化部署案例实战

通过以上的学习,我们已经对git非常熟悉了,可以设计一个自动化部署脚本: q??约定: 1.已经有一个可以上线的代码在git仓库. 2.我们现在要做10个集群节点的一键部署,秒级回滚. 3.所有的web服务,都应该使用普通用户.(强烈建议) 4.所有的web服务都不应该监听80端口,除了负载均衡. q??自动化部署思路大纲: 1.获取最新代码 2.编译(可选) 3.配置文件(软连接或者拷贝). 4.打包(tar,加速传输) 5.文件分发(Scp Rsync Salt)(不需要密码验证) 6.将目

.net core 项目+jenkins+git+docker实现自动化部署

一.准备环境 1.1 运行环境Linxu系统 CentOS7.5[腾讯云] 1.2 安装Docker https://www.cnblogs.com/bob-zb/p/12401407.html 1.3 在Docker中安装jenkins https://www.cnblogs.com/bob-zb/p/12402368.html 1.4 准备git仓库,本人使用的是码云 二.创建.net core 项目 创建成功后会自动生成Dockerfile 文件,未对Dockerfile 做任何修改,然后

持续集成+自动化部署[代码流水线管理及Jenkins和gitlab集成]

持续集成+自动化部署[代码流水线管理及Jenkins和gitlab集成] 标签(空格分隔): Jenkins 一.代码流水线管理 Pipeline名词顾名思义就是流水线的意思,因为公司可能会有很多项目.如果使用jenkins构建完成后,开发构建项目需要一项一项点击,比较麻烦.所以出现pipeline名词. 代码质量检查完毕之后,我们需要将代码部署到测试环境上去,进行自动化测试 新建部署代码项目 点击新建 这里只需要写一下描述 执行Shell脚本 温馨提示:执行命令主要涉及的是权限问题,我们要搞明

通过shell脚本实现代码自动化部署

一.传统部署方式及优缺点 1.传统部署方式 (1)纯手工scp (2)纯手工登录git pull.svn update (3)纯手工xftp往上拉 (4)开发给打一个压缩包,rz上去:解压 2.缺点 (1)全程运维参与,占用大量时间 (2)上线速度慢 (3)人为失误多,管理混乱 (4)回滚慢,不及时 二.环境规划 1.开发环境--开发者本地有自己的环境. 运维需要设置的开发环境,大家共用的服务. 2.测试环境:功能测试环境和性能测试环境. 3.预生产环境:生产环境集群中的某一个节点. 4.生产环