Jenkins部署Jenkins
Posted linux丝绸之路
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Jenkins部署Jenkins相关的知识,希望对你有一定的参考价值。
经过上期和大家分享如何搭建mysql,相信大家感受到了ansible的强大,今天我们讲如何使用jenkins+ansible部署jenkins这个软件,相信大家通过上一期的内容也可以自己写一个搭建jenkis的role,本次分享的目的是让大家多熟悉一下ansible的各个模块的不同使用方式,不同的思维方式就会出现不同的role。
jenkins role的目录结构如下:
|-- README.md
|-- defaults
| `-- main.yml
|-- files
| `-- soft
| |-- apache-tomcat-7.0.73.tar.gz
| |-- env.sh
| |-- jdk-7u80-linux-x64.tar.gz
| `-- jenkins-2.41.1.war
|-- handlers
| `-- main.yml
|-- meta
| `-- main.yml
|-- tasks
| `-- main.yml
|-- tests
| |-- inventory
| `-- test.yml
`-- vars
`-- main.yml
8 directories, 12 files
下面分享具体部署的脚本内容:
#将jdk安装路径加入全局环境变量
env.sh
#!/bin/bash
sed -i '$a\\n#jdk\nexport JAVA_HOME=/modules/jdk1.7.0_80\nexport PATH=$JAVA_HOME/bin:$PATH\nexport CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar' /etc/profile
source /etc/profile
task/main.yml
---
#创建/modules目录,存放jdk
- name: mkdir jdk
file: path=/modules/ state=directory
tags:
- mkdir_jdk
#将jdk包解压到/modules目录下
- name: cp jdk
unarchive: src=soft/{{ item }} dest=/modules/
with_items:
- jdk-7u80-linux-x64.tar.gz
tags:
- cp_jdk
#使用脚本将jdk加入环境变量并生效
- name: env jdk
script: soft/env.sh
tags:
- env_jdk
#将tomcat包解压到/usr/local目录下
- name: cp tomcat
unarchive: src=soft/{{ item }} dest=/usr/local/
with_items:
- apache-tomcat-{{ tomcat_version }}.tar.gz
tags:
- cp_tomcat
#将解压后的tomcat重命名为jenkins-tomcat7
- name: mv tomcat
command: mv /usr/local/apache-tomcat-{{ tomcat_version }} /usr/local/jenkins-tomcat7
tags:
- mv_tomcat
#将jenkins war包复制到jenkins-tomcat7/webapps目录下
- name: cp jenkins
copy: src=soft/jenkins-{{ jenkins_version }}.war dest=/usr/local/jenkins-tomcat7/webapps/
tags:
- cp_jenkins
#添加jenkins用户
- name: add jenkins user
user: name=jenkins
tags:
- add_jenkinsuser
#将目录所属权限修改为jenkins用户
- name: chown jenkins
command: chown -R jenkins:jenkins /usr/local/jenkins-tomcat7
tags:
- chown_jenkins
部署完成后,登录主机去启动tomcat即可,这里没有做成部署后启动是因为jenkins启动时会将密码打印到log里面,如果有需求部署后自动启动,请根据这两期分享的内容去尝试添加一个tag即可。
以上是关于Jenkins部署Jenkins的主要内容,如果未能解决你的问题,请参考以下文章