jenkins

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jenkins相关的知识,希望对你有一定的参考价值。

关于用的docker 构建的admin 项目方法,这里学习下,同样是使用Jenkins:

1 项目名称docker-admin, 丢弃旧的构建 ,只选择了保持构建的最大个数 10个
2 源码管理 选用git http://git.we2tu.com/dev/admin.git
分支构建 /master
3 这里有构建触发器
触发远程构建。
有身份验证令牌 字符串
也可以选择 Poll SCM
日程表
/1
4 Build 也是ROOT POM pom.xml
5 post steps 中也是执行shell

 rsync -avrl --delete target/admin-1.0/ [email protected]:/opt/chiyu-java-web/admin/

 在执行shell 
 cd /root/.jenkins/jobs/docker-admin/workspace
    mvn clean
    ssh [email protected] "/bin/bash /root/scripts/admin.sh"

6 查看在9.3上的脚本:
[email protected]:~/scripts# pwd
/root/scripts
[email protected]:~/scripts# ls
admin.sh delete_container.sh notice.sh receive.sh topre virtual.sh
[email protected]:~/scripts# vim admin.sh

   #!/bin/bash
  CID=$(docker ps | grep "test.admin.tripb2b.com" | awk ‘{print $1}‘)
  docker stop $CID && docker start $CID
  下面这行也可以写成
  docker restart $CID

7 这个最重要的就是看镜像通过容器起来的后的环境了,别无其他的事情。

下面是一个admin项目的传统部署方式:

1 关于项目的代码管理Git
2 pom.xml
3 POST steps
execute shell
BUILD_ID=1234567

if [ netstat -tnulp |grep 8018 |awk -F: ‘{print $4}‘ -eq 8018 ];then
kill -9 netstat -tnulp |grep 8018 |awk ‘{print $NF}‘ |awk -F/ ‘{print $1}‘
fi
rm -rf /usr/local/webserver/tomcat_admin/webapps/admin.war
rm -rf /usr/local/webserver/tomcat_admin/webapps/admin
mkdir /usr/local/webserver/tomcat_admin/webapps/admin
rsync -avrl target/admin.war /usr/local/webserver/tomcat_admin/webapps/admin/
cd /usr/local/webserver/tomcat_admin/webapps/admin/
unzip admin.war
rm -rf admin.war
rm -rf /usr/local/webserver/tomcat_admin/work/Catalina/*
sleep 5
chown -R tomcat_server:tomcat_server /usr/local/webserver/tomcat_admin
su - tomcat_server -c "/usr/local/webserver/tomcat_admin/bin/startup.sh"

在执行shell

cd /var/lib/jenkins/jobs/admin/workspace
mvn clean

我这里的Jenkins 是rpm 包安装的,所以清理的位置在这里。

Jenkins RPM 包格式安装后使用
[[email protected] local]# rpm -qa jenkins
jenkins-1.642.2-1.1.noarch
[[email protected] local]# rpm -ql jenkins
/etc/init.d/jenkins
/etc/logrotate.d/jenkins
/etc/sysconfig/jenkins
/usr/lib/jenkins
/usr/lib/jenkins/jenkins.war
/usr/sbin/rcjenkins
/var/cache/jenkins
/var/lib/jenkins
/var/log/jenkins
[[email protected] local]#

我经常更改的配置有:
vim /etc/sysconfig/jenkins 这里面有端口设置,启动用户设置
vim /etc/init.d/jenkins 这里面是指java 的环境变量比如

candidates="
/usr/local/jdk/bin/java 这一段是根据我的服务器来添加的。否则jenkins启动失败
/etc/alternatives/java
/usr/lib/jvm/java-1.6.0/bin/java
/usr/lib/jvm/jre-1.6.0/bin/java
/usr/lib/jvm/java-1.7.0/bin/java
/usr/lib/jvm/jre-1.7.0/bin/java
/usr/lib/jvm/java-1.8.0/bin/java
/usr/lib/jvm/jre-1.8.0/bin/java

vim /var/lib/jenkins 这个目录是Jenkins的家目录
vim /var/log/jenkins 这个目录是Jenkins的日志目录,比如启动失败啊,排错用的
注意Jenkins升级,在同一个服务器升级降级的各种问题。版本的问题。这个吃亏不少了。折腾2天了。要么是启动就有error ,删除家目录下的config.xml
对于这个文件的认识度。

以上是关于jenkins的主要内容,如果未能解决你的问题,请参考以下文章

jenkins持续集成工作原理

14-Jenkins-Pipeline实现自动部署

jenkins-系统管理-节点管理进去报错

Jenkins发送html格式的邮件,收到的显示乱码,而且木有格式

如何在运行Jenkins CI管道时屏蔽作为用户输入传递的密码?

Jenkins发送html格式的邮件,收到的显示乱码,而且木有格式