Jenkins部署maven项目到远端服务器
jenkins服务器地址:192.168.1.203
项目部署机器地址:192.168.1.201,192.168.1.200
代码托管github
虽然比较low,但是入门是可以的!
Jenkins安装
参考:https://jenkins.io/zh/doc/book/installing/
下载地址:https://jenkins.io/download/
本示例采用rpm包安装。
Jenkins需要JDK1.8支持。
Jenkins默认配置文件:/etc/sysconfig/jenkins
Jenkins war包位置:/usr/lib/jenkins/jenkins.war
# java -version
java version "1.8.0_73"
Java(TM) SE Runtime Environment (build 1.8.0_73-b02)
Java HotSpot(TM) 64-Bit Server VM (build 25.73-b02, mixed mode)
安装过程中该Jenkins实例似乎已离线

解决办法:
默认是通过https://updates.jenkins.io/update-center.json 进行更新的。此处,将https改为http,重启Jenkins,重新打开页面,一切都正常了。
# find / -name "hudson.model.UpdateCenter.xml"
/xx/jenkins/hudson.model.UpdateCenter.xml
# vim /beike/jenkins/hudson.model.UpdateCenter.xml
<?xml version='1.1' encoding='UTF-8'?>
<sites>
<site>
<id>default</id>
<url>http://updates.jenkins.io/update-center.json</url>
</site>
</sites>
# /etc/init.d/jenkins restart
No such plugin: cloudbees-folder

因为下载的Jenkins.war里没有cloudbees-folder插件
需要在网上下载:http://ftp.icm.edu.pl/packages/jenkins/plugins/cloudbees-folder/
下载cloudbees-folder.hpi放在/xxx/webapps/jenkins/WEB-INF/detached-plugins即可
# find / -name "detached-plugins"
/var/cache/jenkins/war/WEB-INF/detached-plugins
# cd /var/cache/jenkins/war/WEB-INF/detached-plugins
# wget http://ftp.icm.edu.pl/packages/jenkins/plugins/cloudbees-folder/latest/cloudbees-folder.hpi
# /etc/init.d/jenkins restart
之后可正常安装jenkins社区版推荐插件!

Jenkins手动插件安装
系统管理------>插件管理
如果遇到如下报错:

解决办法:
Advanced

将https修改为http即可
需安装插件:
GIT client plugin
GIT plugin
Git server plugin
GitHub API Plugin
GitHub plugin
SSH Credentials Plugin
SSH plugin
Publish Over SSH
Maven Integration
NodeJS
设置环境变量



不要勾选自动安装!
Jenkins配置机器信任
配置Jenkins服务器与待发布服务器之间的信任
# ssh-copy-id -i .ssh/id_rsa.pub root@192.168.1.200
# ssh-copy-id -i .ssh/id_rsa.pub root@192.168.1.201
Jenkins中添加已经信任的机器



使用密码验证!
配置Jenkins与git信任
配置git认证
Jenkins服务器上生成秘钥:
# ssh-keygen
将.ssh/id_rsa.pub 复制到git的ssh key中,便于拉取代码

测试Jenkins服务器可以可以clone代码!
配置Jenkins认证



此处输入.ssh/id_rsa

创建项目
创建maven项目

项目描述

SSHF方式,若无认证,会报错

正常情况:

依赖pom文件的编译命令:

编译成功后动作:

连接到部署服务器上,将原来的服务暂时暂停,备份上一次部署的压缩包,选择添加远程shell脚本执行。

把打包好的代码发送到服务器上,并且启动服务,选择通过ssh发送文件并执行命令到远程服务器。
Jenkins部署maven项目到远端服务器的更多相关文章
- Jenkins+harbor+gitlab+k8s 部署maven项目
一.概述 maven项目部署流程图如下: 环境介绍 操作系统 ip 角色 版本 ubuntu-16.04.4-server-amd64 192.168.10.122 Jenkins+harbor Je ...
- jenkins部署java项目,脚本文件放在远程仓库中 和jar一起打包(六)
jenkins部署java项目到远程linux上,脚本文件和项目一起上传到gogs上,直接执行gogs上的脚本文件来执行项目 (1)新建maven项目 pom.xml的配置 <project x ...
- Intellij 部署maven项目
一 部署Maven项目 1.下载和配置 (1)下载:maven.apache.org,点击download,下载apache-maven-3.3.9-bin.zip (2)配置环境变量: 环境变量包括 ...
- jenkins部署web项目到webogic
注: Docker容器里安装的jenkins,Docker容易里安装的weblogic 在jenkins里面直接将打包好的 war 包通过 Publish over SSH插件 放入 weblogic ...
- jenkins构建maven项目
使用jenkins构建部署maven项目 因为一开始我们是自定义插件,所以构建项目的时候没有显示maven风格的项目.如果要想使用maven,我们这里必须得安装一下插件,我们在插件管理器中, 可以看到 ...
- git jenkins 部署java项目
1.Java项目部署基本概述: 1.什么是Java项目? 2.为什么Java项目需要使用Maven编译? 3.手动实现Java项目构建? 4.手动实现Java项目架构图? 源码包 jar包 ...
- Jenkins部署Web项目到远程tomcat(通过jenkins插件)
之前讲到的是如何构建一个项目,并且将代码进行编译.打包,那么打包完成最后的结果就需要发布到应用服务器,将项目部署成功.在之前的项目中我们采用的shell脚本来部署,下面讲解通过Jenkins部署web ...
- 部署Maven项目到tomcat报错:java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener【转】
部署Maven项目到tomcat报错:java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderLi ...
- Jenkins创建Maven项目及SSH部署
前面我们已经安装了Jenkins的环境,以及配置好了jdk和maven.下面我们来看如何通过Jenkins将svn的项目进行打包和部署. 创建MAVEN项目 1.点击新建,输入项目名,选择" ...
随机推荐
- GoAccess 视图化access.log 日志
1.安装GoAccess 工具可以直接使用 apt-get install goaccess 2.使用goaccess命令将日志生成html文件 goaccess 日志路径 -o 输出HTML的路径 ...
- 【SpringMVC】统一异常处理
一.需求 二.统一异常处理解决方案 2.1 定义异常 2.2 异常处理 2.3 配置统一异常处理器 2.4 异常处理逻辑 一.需求 一般项目中都需要作异常处理,基于系统架构的设计考虑,使用统一的异常处 ...
- 直接插入排序算法(java)
直接插入排序是将未排序的数据插入至已排好序序列的合适位置. 具体流程如下: 1.首先比较数组的前两个数据,并排序: 2.比较第三个元素与前两个排好序的数据,并将第三个元素放入适当的位置: 3.比较第四 ...
- Nginx- web服务配置与测试
(一) 软件介绍由俄罗斯人lgor Sysove开发,为开源软件.支持高并发:支持几万并发连接(特别是静态小文件业务环境) 资源消耗少:在3万并发连接下开启10个Nginx线程消耗内存不到200M 支 ...
- JavaScript中对数组的排序
将下列对象数组,通过工资属性,由高到低排序 var BaiduUsers = [], WechatUsers = []; var User = function(id, name, phone, ge ...
- springboot Properties加载顺序源码分析
关于properties: 在spring框架中properties为Environment对象重要组成部分, springboot有如下几种种方式注入(优先级从高到低): 1.命令行 java -j ...
- SASS 和 LESS 的区别
1.编译环境不同 SASS 的安装需要 Ruby 环境,是在服务端处理的: LESS 需要引入 less.js 来处理代码输出 CSS 到浏览器,也可以在开发环节使用 LESS,然后编译成 CSS 文 ...
- SpringBoot项目的异常
1.问题描述 创建springcloud 项目时候,main报错: Spring Boot Application in default package less… (Ctrl+F1)Inspecti ...
- 开发第一个maven示例
mavenDemo目录如下: 在webapp下新建index.jsp文件 浏览器访问:http://localhost:8080/mavenDemo/index.jsp
- firewall 相关命令
1.firewalld的基本使用 启动: systemctl start firewalld 查看状态: systemctl status firewalld 停止: systemctl disabl ...