搭建jenkins实现自动化部署微服务_自动化部署平台搭建

搭建jenkins实现自动化部署微服务_自动化部署平台搭建一、安装jenkins1、添加yumrepos,然后安装注:如果上边的执行成功就不用再执行这两行了注:如果网络不好需要重试几次2、如果未安装java还需安装java3、启动和停止如果启动

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

一、安装jenkins

1、添加yum repos,然后安装

sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat/jenkins.repo
sudo rpm --import https://pkg.jenkins.io/redhat/jenkins.io.key

 注:如果上边的执行成功就不用再执行这两行了

sudo wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/RedHat/jenkins.repo
sudo rpm --import https://jenkins-ci.org/redhat/jenkins-ci.org.key

 注:如果网络不好需要重试几次

sudo yum install jenkins

2、如果未安装java还需安装java

sudo yum install java

3、启动和停止

sudo service jenkins start
sudo service jenkins stop
sudo service jenkins restart

sudo chkconfig jenkins on

如果启动失败,可以运行如下命令查看错误信息

systemctl status jenkins.service

搭建jenkins实现自动化部署微服务_自动化部署平台搭建

如上错误是java配置错误,需要修改jenkins配置文件

vi /etc/rc.d/init.d/jenkins

类似如下修改:

candidates="
************
************
/usr/local/jdk1.8/bin/java
"

4、jenkins的默认设置

  Jenkins会随系统启动而启动。详情参照/etc/init.d/jenkins
  Jenkins会创建一个用户叫做jenkins, 如果你修改了user,则要修修改所属者:/var/log/jenkins,/var/lib/jenkins,/var/cache/jenkins
  如果遇到问题,查看日志/var/log/jenkins/jenkins.log
  配置文件/etc/sysconfig/jenkins
  默认启用8080

 5、打开和关闭防火墙

  开启非80端口需要打开防火墙,参考:http://www.cnblogs.com/rslai/p/7954080.html

6、关于centos上的java
  Jenkins不支持在centos的默认的jdk上工作。如果如下所示,则需要remove:

  java -version
  java version “1.5.0”
  gij (GNU libgcj) version 4.4.6 20110731 (Red Hat 4.4.6-3)
  为了正确使用Jenkins:

  yum remove java
  然后可以安装openjdk

  yum install java-1.7.0-openjdk
  正确如下:

  java -version
  java version “1.7.0_79”
  OpenJDK Runtime Environment (rhel-2.5.5.1.el6_6-x86_64 u79-b14)
  OpenJDK 64-Bit Server VM (build 24.79-b02, mixed mode)

7、配置java路径
直接启动:

sudo service jenkins start
但是发现启动失败,于是需要配置java位置:

vi /etc/init.d/jenkins
在启动加入本机的java:

[root@iZ94xvn71eeZ ~]# vim /etc/init.d/jenkins

# Set up environment accordingly to the configuration settings
[ -n “$JENKINS_HOME” ] || { echo “JENKINS_HOME not configured in $JENKINS_CONFIG”;
if [ “$1” = “stop” ]; then exit 0;
else exit 6; fi; }
[ -d “$JENKINS_HOME” ] || { echo “JENKINS_HOME directory does not exist: $JENKINS_HOME”;
if [ “$1” = “stop” ]; then exit 0;
else exit 1; fi; }

# Search usable Java as /usr/bin/java might not point to minimal version required by Jenkins.
# see http://www.nabble.com/guinea-pigs-wanted—–Hudson-RPM-for-RedHat-Linux-td25673707.html
candidates=”
/etc/alternatives/java
/usr/lib/jvm/java-1.8.0/bin/java
/usr/lib/jvm/jre-1.8.0/bin/java
/usr/lib/jvm/java-1.7.0/bin/java
/usr/lib/jvm/jre-1.7.0/bin/java
/usr/bin/java
/usr/java/jdk1.7.0_80/bin/java
” 

 8、配置端口

  修改

vi /etc/sysconfig/jenkins

  内容改为需要的端口

JENKINS_PORT="8080"

9、yum安装Jenkins默认路径为

  /var/lib/jenkins

二、进入jenkins

1、打开

http://192.168.3.231:8080

搭建jenkins实现自动化部署微服务_自动化部署平台搭建

2、查看密码,将内容填写到密码处点击继续

cat /var/lib/jenkins/secrets/initialAdminPassword

3、选择默认插件即可  

搭建jenkins实现自动化部署微服务_自动化部署平台搭建

4、设置管理员

搭建jenkins实现自动化部署微服务_自动化部署平台搭建

 三、安装和Git,GitLab插件

1、安装git客户端

  Linux安装配置git参见,只需要安装客户端不需要产生sshkey,如果你又想再jenkins上用git又想直接再linux上用再生成key

  http://www.cnblogs.com/rslai/p/8175864.html

2、安装git插件

搭建jenkins实现自动化部署微服务_自动化部署平台搭建

3、在这里将安装和Git,GitLab插件,注意使用ctrl+f查找

搭建jenkins实现自动化部署微服务_自动化部署平台搭建

4、配置gitLab连接

搭建jenkins实现自动化部署微服务_自动化部署平台搭建

5、找到Gitlab配置,如下图

  name:可以随便写一个

  host URL:host地址注意只填写host不要库地址写http地址即可

  credentials:选择一个证书

搭建jenkins实现自动化部署微服务_自动化部署平台搭建

   新建一个证书,选择add->Jenkins添加一个证书

搭建jenkins实现自动化部署微服务_自动化部署平台搭建

  kind:选择GitLab API token

  API token:输入token,如何找到token参见下面 

搭建jenkins实现自动化部署微服务_自动化部署平台搭建

  查找token,token需要在gitLab中查找,不同版本的gitLab方式不同

    a)在Access Tokens中就显示了api token直接copy即可

    b)在如下页面填入名字和过期时间后自动生成token,生成后一定要使用记事本记下来,之后无法查看该token

搭建jenkins实现自动化部署微服务_自动化部署平台搭建

   回到Jenkins设置token后Test Connection,如果测试成功

四、新建item

1、生成ssh key 

由于jenkins执行脚本的使用使用的是jenkins这个账号,所以公钥私钥需要放在此用户的目录里。

a)由于此账号是一个不允许登录且修改了home目录的账号,所以需要先执行 vi /etc/passwd 查看一下jenkins账号的home目录,在里边找到jenkins这个账号其中红框部分为他的home目录

搭建jenkins实现自动化部署微服务_自动化部署平台搭建

b)生成root(不是root其它账号也可)账号的sshkey

ssh-keygen -t rsa -C "root@192.168.3.231" -b 4096 # 生成公钥私钥,注意双引号内是个助记符根据需要修改
cd /root/.ssh # 进入ssh目录
git ls-remote -h ssh://git@118.188.3.87:1022/html/tamH5.git HEAD # 连一下git服务器,生成known_hosts文件
ll # 查看文件

搭建jenkins实现自动化部署微服务_自动化部署平台搭建

如果没有 known_hosts 文件之后Jenkins发布时会有如下错误 “Host key verification failed.”

c)进入jenkins目录将刚才创建的sshkey复制过来并将所有者指到jenkins账号

cd /var/lib/jenkins # 进入jenkins的home目录
mkdir .ssh # 创建ssh目录存放sshkey文件,如果存在会报错
cd .ssh
cp /root/.ssh/* . # 将root账号下的sshkey文件复制过来,此时如果执行ll看一下这两个文件所有这应该是root
chgrp jenkins * # 将key文件的组改为jenkins
chown jenkins * # 将key文件的所有者改为jenkins

d)此时pwd再ll应该看到如下内容  

搭建jenkins实现自动化部署微服务_自动化部署平台搭建

2、打开 id_rsa.pub 将其中内容复制到记事本中,然后再copy到git服务器上

3、访问gitlab将刚才生成的公钥添加到ssh keys中

 搭建jenkins实现自动化部署微服务_自动化部署平台搭建

4、创建证书

  a)Jenkins -> Credentials

 搭建jenkins实现自动化部署微服务_自动化部署平台搭建

  b)global -> Add credentials新建一个证书

搭建jenkins实现自动化部署微服务_自动化部署平台搭建

  c)填写证书信息

    kind:选择 SSH Username with private key

    Username:随便输入,之后在创建item是记得住选择那个即可

    Priveate key:选择“Enter directly”后输入私钥,记住一定是私钥 (按照上步骤在linux上生成密钥后,会是一对其中带pub后缀的是公钥。id_rsa私钥、id_rsa.pub公钥)。在linux执行cat id_rsa将所有内容copy填入key中

    Passphrase:不填,如果填了每次都需要输入密码

    填好后点击“ok”保存

搭建jenkins实现自动化部署微服务_自动化部署平台搭建

2、新建item

  a)新建Item

搭建jenkins实现自动化部署微服务_自动化部署平台搭建

  b)输入任务名称,选择“构建一个自由风格软件项目”后单击“确定”

 搭建jenkins实现自动化部署微服务_自动化部署平台搭建 

   c)在GitLab connection处选择刚才创建的连接(输入git host时创建的连接)

    选择git并Credentials处选择刚才输入私钥的证书

    Repository URL输入git项目地址(注意输入时需添加ssh注意如果修改端口应填写ssh://git@host:port/xxxxxx/xxxxx.git)

    之后单击“保存”即可。

 搭建jenkins实现自动化部署微服务_自动化部署平台搭建

3、构建job 

  a)进入demo job

 搭建jenkins实现自动化部署微服务_自动化部署平台搭建

  b)点击“立即构建”

    由于item只配置了git所以只会clone git,clone后在如下目录中,以job名称为目录保存

     /var/lib/jenkins/workspace

搭建jenkins实现自动化部署微服务_自动化部署平台搭建

 

 

 

构建后目录

./var/lib/jenkins/workspace/

根据job名字放到相应目录

 

 

 

 

 

 

 

 

 

 

 

 

 

安装插件 

搭建jenkins实现自动化部署微服务_自动化部署平台搭建

 

 

 

 

 

 

 

 

 

参考文档:

  http://blog.csdn.net/achuo/article/details/51086599

  http://blog.csdn.net/wangfei0904306/article/details/56011877

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/166690.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • oralce入门学习[通俗易懂]

    oralce入门学习[通俗易懂]oracle的认识sql数据库语言关键字distinct关键字null连接符||比较运算符排序单行函数字符函数数值函数日期函数转换函数通用函数条件表达式多行函数

    2022年7月2日
    27
  • 卓越性能 の 军火库「建议收藏」

    卓越性能 の 军火库「建议收藏」在介绍性能优化的军火库之前,先来扯几句题外话。希望这些题外话,能打消你追求卓越性能的理想,来甘心当一枚圆滑的钉子。我是非常不推荐程序员,对公司的业务,进行性能优化的。说这话,纯粹是基于个人自身安全考虑。因为性能优化,在大多数公司,属于费力不讨好的工作项。追求极简的代码,性能卓越的代码,是有追求的程序员的目标。但随着经历了大大小小的公司,我发现很多优秀的程序员,在经受着这种追求的反嗜,以至于痛不欲生。下有下面几点原因,虽然我们知道它肯定是错的,但我们无能无力:公司按照完成的功能,对程序员…

    2022年9月30日
    0
  • java课设选题_基于javaweb的课程设计

    java课设选题_基于javaweb的课程设计Java课程设计1.题目及要求基于学校的搜索引擎负责部分:JavaGUI设计2.界面调查1)调查界面:百度2)思考:根据我的调查,我认为我需要完成三个界面的设计:第一个是调查主界面,里面有一个集美大学的logo,一个搜索框用文本字段,因为需要在里面写入搜索内容,一个搜索按钮用button,这个按钮完成的功能就是输入搜索内容后,点击搜索按钮,可以跳转到下一个界面,并且返回结果。第二个界面是搜索结…

    2025年5月31日
    0
  • 一文读懂C++虚函数的内存模型[通俗易懂]

    一文读懂C++虚函数的内存模型[通俗易懂]一文彻底读懂C++虚函数表的实现机制(使用GDB内存布局)1、虚函数简介2、虚函数表简介3、有继承关系的虚函数表剖析3.1、单继承无虚函数覆盖的情况3.2、单继承有虚函数覆盖的情况3.3、多重继承的情况3.4、多层继承的情况4、总结1、虚函数简介C++中有两种方式实现多态,即重载和覆盖。重载:是指允许存在多个同名函数,而这些函数的参数表不同(参数个数不同、参数类型不同或者两者都不同)。覆盖:是指子类重新定义父类的虚函数的做法,简而言之就是用父类型别的指针指向其子类的实例,然后通过父类的指针调用实际

    2022年7月26日
    3
  • java hashcode作用yield返回值_对象的hashcode是什么

    java hashcode作用yield返回值_对象的hashcode是什么总的来说,Java中的集合(Collection)有两类,一类是List,再有一类是Set。前者集合内的元素是有序的,元素可以重复;后者元素无序,但元素不可重复。那么这里就有一个比较严重的问题了:要想保证元素不重复,可两个元素是否重复应该依据什么来判断呢?这就是Object.equals方法了。但是,如果每增加一个元素就检查一次,那么当元素很多时,后添加到集合中的元素比较的次数就非常多

    2022年9月8日
    0
  • java snmp walk_snmpwalk用法

    java snmp walk_snmpwalk用法snmpwalk语法:snmpwalk交换机或路由器IP地址-cSNMP读密码-v1或2(代表SNMP版本)OID(对象标示符)用法举例:1、snmpwalk-cpublic-v1-mALL192.168.30.49.1.3.6.1.2.1.25.1得到取得windows端的系统进程用户数等2、snmpwalk-cpublic-v1-mALL192…

    2022年6月30日
    27

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号