1. 程式人生 > >Jenkins 安裝部署

Jenkins 安裝部署

exec dev ref nco home centos git follow 軟件項目

1.1 Jenkins概念:

Jenkins是一個功能強大的應用程序,允許持續集成和持續交付項目,無論用的是什麽平臺。這是一個免費的源代碼,可以處理任何類型的構建或持續集成。集成Jenkins可以用於一些測試和部署技術。Jenkins是一種軟件允許持續集成。

1.2 Jenkins目的:

1、持續、自動地構建/測試軟件項目。?
2、監控軟件開放流程,快速問題定位及處理,提示開放效率。
這些概念我沒去理解,我現在只知道用它可以減輕我的工作量。
因為代碼發布真的是很繁瑣的活,像 nodejs 是先從 GitLab 上面下載 dev 的分支,然後上傳到服務器,然後重啟服務。
像 jar、war包,要先停止服務,再替換包,有時候還要替換、增加已有的文件夾,然後再啟動Tomcat。

雖然說起來不是很多,但是每天做個幾次,就覺得煩透了,為什麽不能用工具去做這些重復的工作呢?
我就可以解放自己的雙手了。。。
這就是 Jenkins 在我這裏最大的意義。

2.1 安裝

安裝可以直接運行 war 包,可以把 war 放到 Tomcat 運行,可以用 yum 去安裝。我這裏使用 Tomcat 去運行。

環境基於:

CentOS?6、JDK1.8、Tomcat7、maven?3.5.3、nodejs8.11.3

Jenkins 2.7.4 https://mirrors.tuna.tsinghua.edu.cn/jenkins/war/2.74/jenkins.war
jdk1.8?http://download.oracle.com/otn-pub/java/jdk/8u171-b11/512cd62ec5174c3487ac17c61aaa89e8/jdk-8u171-linux-x64.tar.gz?AuthParam=1529398062_da9bd60ddb0eb5f0ee198bc8a2663121
tomcat?7?https://mirrors.aliyun.com/apache/tomcat/tomcat-7/v7.0.88/bin/apache-tomcat-7.0.88.tar.gz
maven?3.5.3?https://mirrors.aliyun.com/apache/maven/maven-3/3.5.3/binaries/apache-maven-3.5.3-bin.tar.gz
Nodejs 8.11.3 https://nodejs.org/dist/v8.11.3/node-v8.11.3-linux-x64.tar.xz
安裝 jdk、Tomcat、maven、nodejs
tar zxvf jdk-8u171-linux-x64.tar.gz -C /usr/local ; cd /usr/local ; mv jdk1.8.0_171 jdk;
tar zxvf apache-tomcat-7.0.88.tar.gz -C /usr/local ; cd /usr/local ; mv apache-tomcat-7.0.88 tomcat7
tar zxvf apache-maven-3.5.3-bin.tar.gz -C /usr/local ; cd /usr/local/ ;  mv apache-maven-3.5.3/ maven
xz -d node-v8.11.3-linux-x64.tar.xz ; tar xvf node-v8.11.3-linux-x64.tar -C /usr/local ; cd /usr/local/; mv node* node

vim /etc/profile 
#jdk
export JAVA_HOME=/usr/local/jdk
export JRE_HOME=${JAVA_HOME}/jre??
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib??
export PATH=${JAVA_HOME}/bin:$PATH
#tomcat
export CATALINA_HOME=/usr/local/tomcat7
export PATH=$PATH:$CATALINA_HOME/bin
#maven
export MAVEN_HOME=/usr/local/maven
export PATH=$PATH:$MAVEN_HOME/bin
#node
export NODE_HOME=/usr/local/node
export PATH=$NODE_HOME/bin:$PATH

source /etc/profile
測試
[root@localhost ~]# java -version
java version "1.8.0_171"
Java(TM) SE Runtime Environment (build 1.8.0_171-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.171-b11, mixed mode)
[root@localhost ~]# mvn -v
Apache Maven 3.5.3 (3383c37e1f9e9b3bc3df5050c29c8aff9f295297; 2018-02-25T03:49:05+08:00)
Maven home: /usr/local/maven
Java version: 1.8.0_171, vendor: Oracle Corporation
Java home: /usr/local/jdk/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "2.6.32-573.el6.x86_64", arch: "amd64", family: "unix"
[root@localhost ~]# node -v
v8.11.2

部署Jenkins

把前面下載的 jenkins.war 放置到 Tomcat 目錄下的 webapps ,訪問

http://ip:port/jenkins

我這裏服務器的ip為 192.168.153.111,Tomcat 端口為8080.所以這裏訪問

http://192.168.153.111:8080/jenkins

初次啟動可能有點慢,耐心等待。

  • 首先是根據提示去打開密碼文件。並輸入
  • 安裝推薦的插件
  • 創建用戶

安裝Jenkins插件

系統管理-管理插件-可選插件-過濾

插件名稱 用途
Nodejs nodejs用的
Publish Over SSH 將項目通過部署到遠程服務器
SSH Execute shell scripts on remote host using ssh (pre and post build). Based on the cool scp plugin.
Maven Integration maven用的

設置全局變量
系統管理-Global Tool Configuration

Jenkins 安裝部署