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. node中用的cookie-parser插件设置的max-age,和普通正常设置max-age的计算方式不一样

    在cookie-parser中通过max-age设置的cookie的过期时间是按照毫秒计算的; 在普通设置的时候max-age后面的值是按秒计算的;

  2. 使用Idea初始化一个spring boot 项目

    配置环境 Idea配置jdk8.0 1.打开Idea,点击右上角file,找到Other Settings选项,点击下方的Default Project Structure,如下所示 2.点击下图中所 ...

  3. android 动画总结一

    一.补间动画 补间动画就是指开发者指定动画的开始.动画的结束的"关键帧",而动画变化的"中间帧"由系统计算,并补齐. 补间动画分为四种:平移动画(Transla ...

  4. Apache老版本下载地址

    有时候我们想做测试或者使用旧版本软件时,往往发现官方网站已经下架,以Apache为例: Apache旧版本下载地址:http://archive.apache.org/dist/httpd/ .... ...

  5. Mysql 中的SSL 连接

    Mysql 中的SSL 连接 以下来自网络参考和自己测试整理,没有查找相关资料.若有错误之处,欢迎指正. 当前的Mysql 客户端版本基本都不太能支持 caching_sha2_password 认证 ...

  6. CentOS7.X版本系统的下载和安装

    一.下载CentOS镜像 1.打开浏览器输入centos.org 2.选择版本下载 3.进入下载页面选择下载版本的种子链接,在迅雷下载即可. 二安装CentOS系统 1.服务器开机,根据界面提示进入磁 ...

  7. Python 获取环境变量的几种方式

    第一种 import os os.environ.get('key_name') 第二种 import os os.getenv('key_name') 第三种 import os os.getenv ...

  8. 原生Ajax代码实现

    Ajax Asynchronous JavaScript And XML   异步: 指一段程序执行时不会阻塞其他程序执行,其表现形式为程序的执行顺序不依赖程序本身的书写顺序 ,相反的则为同步, 自己 ...

  9. 初始化springbean

    public class SMSMessageHandler implements InitializingBean { @Overridepublic void afterPropertiesSet ...

  10. [nginx] nginx使用SNI功能的方法

    SNI是什么 在使用TLS的时候,http server希望根据HTTP请求中HOST的不同,来决定使用不同的证书. SNI细节 由于HTTP的HOST字段在HTTP GET中.而TLS的握手以及证书 ...