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项目到远端服务器的更多相关文章

  1. Jenkins+harbor+gitlab+k8s 部署maven项目

    一.概述 maven项目部署流程图如下: 环境介绍 操作系统 ip 角色 版本 ubuntu-16.04.4-server-amd64 192.168.10.122 Jenkins+harbor Je ...

  2. jenkins部署java项目,脚本文件放在远程仓库中 和jar一起打包(六)

    jenkins部署java项目到远程linux上,脚本文件和项目一起上传到gogs上,直接执行gogs上的脚本文件来执行项目 (1)新建maven项目 pom.xml的配置 <project x ...

  3. Intellij 部署maven项目

    一 部署Maven项目 1.下载和配置 (1)下载:maven.apache.org,点击download,下载apache-maven-3.3.9-bin.zip (2)配置环境变量: 环境变量包括 ...

  4. jenkins部署web项目到webogic

    注: Docker容器里安装的jenkins,Docker容易里安装的weblogic 在jenkins里面直接将打包好的 war 包通过 Publish over SSH插件 放入 weblogic ...

  5. jenkins构建maven项目

    使用jenkins构建部署maven项目 因为一开始我们是自定义插件,所以构建项目的时候没有显示maven风格的项目.如果要想使用maven,我们这里必须得安装一下插件,我们在插件管理器中, 可以看到 ...

  6. git jenkins 部署java项目

    1.Java项目部署基本概述:  1.什么是Java项目?  2.为什么Java项目需要使用Maven编译?  3.手动实现Java项目构建?  4.手动实现Java项目架构图? 源码包   jar包 ...

  7. Jenkins部署Web项目到远程tomcat(通过jenkins插件)

    之前讲到的是如何构建一个项目,并且将代码进行编译.打包,那么打包完成最后的结果就需要发布到应用服务器,将项目部署成功.在之前的项目中我们采用的shell脚本来部署,下面讲解通过Jenkins部署web ...

  8. 部署Maven项目到tomcat报错:java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener【转】

    部署Maven项目到tomcat报错:java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderLi ...

  9. Jenkins创建Maven项目及SSH部署

    前面我们已经安装了Jenkins的环境,以及配置好了jdk和maven.下面我们来看如何通过Jenkins将svn的项目进行打包和部署. 创建MAVEN项目 1.点击新建,输入项目名,选择" ...

随机推荐

  1. Python初识对象

    一 楔子 你现在是一家游戏公司的开发人员,现在需要你开发一款叫做<人狗大战>的游戏,你就思考呀,人狗作战,那至少需要2个角色,一个是人, 一个是狗,且人和狗都有不同的技能,比如人拿棍打狗, ...

  2. ol li 兼容

    ol 标签在 chrome 60 和 safari12 缩进不一样. 因为序号距离copy距离不一样,导致显示不一样.解决办法. list-style-position: inside;text-in ...

  3. idea中异常处理快捷键

    键盘按下 alt+Enter 一般选择try/catch这一个

  4. vue 将时间戳转换成日期格式 (一)

    (1)创建一个处理时间格式的js,内容如下: ../../utils/formatDate.js export function formatDate(date, fmt) { if (/(y+)/. ...

  5. 【日语】日语N5学习

    副词与连接词 ~から: 从-(表示时间.场所起点) ~まで: 到-(表示时间.场所终点) と: 和(并列时用) えーと: 嗯 いっしょに: 一起 ちょっと: 一点儿 いつも: 经常.总是 ときどき: ...

  6. 编写一个stm32 svc关中断函数

    做到了让stm32触发svc中断并传递进去参数然后切换到handler模式并修改特殊寄存器的值,从而达到关中断,但是其实这个程序直接就是特权级,故不进入handler模式也可以修改特殊寄存器..... ...

  7. 微信APP支付(基于Java实现微信APP支付)

    步骤: 导入maven依赖 <!--微信支付--> <dependency> <groupId>com.github.wxpay</groupId> & ...

  8. 备份一下我的88bugs的application文档

    # 服务端口 server.port=8083 #spring.mvc.favicon.enabled=false server.servlet.context-path=/bug/ dateform ...

  9. 基于LPCXpresso54608开发板创建Embedded Wizard UI应用程序

    平台集成和构建开发环境:LPCXpresso 54608入门指南 本文主要介绍了创建一个适用于LPCXpresso54608开发板的Embedded Wizard UI应用程序所需的所有必要步骤.请一 ...

  10. vscode java是否合适??

    https://blog.csdn.net/luoaki/article/details/79138028 Language support for Java ™ for Visual Studio ...