我也玩Jenkins

  自己挖的坑只能自己填。需要发布的应用越来越多,于是动手用Jenkins实现自动化。这里只记录经历的坑。

一、安装

  安装方法很多,最终选择了war包方式,直接放在tomcat里面跑。

二、初始化

  •   tomcat中看到jenkins应用跑起来后,直接在浏览器中访问/ip:port/jenkins即可看到初始配置界面。
  •   war包方式安装会在应用账号home目录下创建.jenkins目录,存放所有信息。删除jenkins也要同步删掉该目录。有次不小心用root账号启动了tomcat,一开始还莫名其妙为啥又要重新初始化,之前花了2个小时搞定的插件怎么要重新安装,后来才醒悟过来tomcat的启动账号弄错了,结果创建了/root/.jenkins目录。。。
  •   安装过程中会需要花一段时间安装插件,监测到内网环境会提示配置代理服务器。

三、配置

  •   根据需要安装一些插件:
    • Maven Integration plugin安装后可以构建meven项目
  •   tomcat下总会提示反向代理配置错误,这个目前没法解决(网上的方法都不灵)。只能选忽略,以后不提醒。
  •   tomcat的Connector配置需要有URIEncoding="UTF-8",但这个跟useBodyEncodingForURI="true"是冲突的。有了后面这个jenkins就会一直提示容器设置有误,会影响中文显示。
  •   配置最多的地方是“全局工具配置”,这个地方对于初学的我来说,有个大坑。jenkins的工具有自动安装和使用主机已有两种区别,相关的配置(如代理)弄错了地方就耗死都搞不定。
    • JDK:直接使用主机上已有的JDK,去掉“自动安装”的勾后,在JAVA_HOME栏填写主机java SDK路径,如:/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.65-3.b17.el7.x86_64。如果从oracle网站上下需要oracle账号密码,还慢得死。
    • maven:这个地方耽误一天时间。使用的是自动安装,内网需要配置代理服务器,自动安装的maven配置文件在:/应用账号home/.jenkins/tools/hudson.tasks.Maven_MavenInstallation/maven/conf。之前一直在系统maven的配置文件(/etc/maven/settings.xml)上折腾,构建的时候就一直报各种连接不到maven仓库,即使我换了好几个镜像仓库都没用。
    • 系统管理-系统配置中的目标服务器可以使用ssh的免密登录,配置好ssh-copy-id之后,在系统配置的Publish over SSH下Path to key,设置好id_rsa的路径,如/userhome/.ssh/id_rsa

四、使用

  •   构建一个maven项目:
    • package时遇到找不到oracle的jdbc的问题。手工安装oracle驱动到主机的本地maven库:
      mvn install:install-file -Dfile=/tmp/ojdbc8-12.2.0.1.jar -DgroupId=com.oracle -DartifactId=ojdbc8 -Dversion=12.2.0.1 -Dpackaging=jar
      
    • 使用国内镜像仓库可以显著加快package速度。配置文件中添加(放在mirrors小节内):

          <mirror>
              <id>aliyunmaven</id>
              <name>aliyun maven</name>
              <url>https://maven.aliyun.com/repository/public</url>
              <mirrorOf>central</mirrorOf>        
          </mirror>
    • 系统maven和自动安装的maven共用本地.m2的仓库。
posted @ 2020-02-15 20:27  badwood  阅读(226)  评论(0编辑  收藏  举报
Badwood's Blog