Jenkins的四种安装部署方式以及Jenkins的基本配置与基本使用

生活中,最使人疲惫的往往不是道路的遥远,而是心中的郁闷;最使人痛苦的往往不是生活的不幸,而是希望的破灭;最使人颓废的往往不是前途的坎坷,而是自信的丧失;最使人绝望的往往不是挫折的打击,而是心灵的死亡。所以我们要有自己的梦想,让梦想的星光指引着我们走出落漠,走出惆怅,带着我们走进自己的理想。

导读:本篇文章讲解 Jenkins的四种安装部署方式以及Jenkins的基本配置与基本使用,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com,来源:原文

安装Jenkins

Jenkins是一个开源的、可扩展的持续集成、交付、部署(软件/代码的编译、打包、部署)的基于web界面的平台。

官网: https://jenkins.io

下载地址:https://www.jenkins.io/zh/download/

插件:http://updates.jenkins-ci.org/download/plugins/

1.yum安装Jenkins

下载与安装

访问官网:https://www.jenkins.io/download/下载Jenkins。选择LTS长期支持版,选择适合的系统版本,如:CentOS
在这里插入图片描述
进入后显示Jenkins安装命令示例,照着命令执行即可。
在这里插入图片描述

# 导入jenkins源
sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo
# 导入jenkins官方证书;如果以前从Jenkins中导入了密钥,rpm -import将会失败,因为已经有了一个密钥,直接忽略即可
sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key
# 安装jenkins(安装的是最新的LTS版本)
yum install jenkins

rpm -ql jenkins查看yum安装的文件

# 启动文件
/etc/init.d/jenkins
# 日志分割配置文件
/etc/logrotate.d/jenkins
# jenkins主配置文件
/etc/sysconfig/jenkins
# 可执行命令
/usr/bin/jenkins
# Jenkins服务
/usr/lib/systemd/system/jenkins.service
# 命令
/usr/sbin/rcjenkins
# 存放war目录
/usr/share/java/jenkins.war
/usr/share/jenkins
/usr/share/jenkins/migrate
# war包解压目录 jenkins网页代码目录
/var/cache/jenkins
# jenkins 工作目录
/var/lib/jenkins
# 日志
/var/log/jenkins

修改配置

修改Jenkins的启动脚本,vim /etc/init.d/jenkins,因为jenkins的启动脚本默认java路径为:/usr/bin/java

追加指定当前机器安装JDK路径:/usr/local/jdk1.8/bin/java,可使用命令whereis java查找

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-11.0/bin/java
/usr/lib/jvm/jre-11.0/bin/java
/usr/lib/jvm/java-11-openjdk-amd64
/usr/bin/java
/usr/local/jdk1.8/bin/java
"

修改默认端口

vim /etc/sysconfig/jenkins jenkins默认访问端口:8080,根据需求决定是否修改,这里修改为:8000

## Type:        integer(0:65535)
## Default:     8080
## ServiceRestart: jenkins
#
# Port Jenkins is listening on.
# Set to -1 to disable
#
JENKINS_PORT="8000"

同时也要修改 vim /usr/lib/systemd/system/jenkins.service文件中的端口

# Port to listen on for HTTP requests. Set to -1 to disable.
# To be able to listen on privileged ports (port numbers less than 1024),
# add the CAP_NET_BIND_SERVICE capability to the AmbientCapabilities
# directive below.
Environment="JENKINS_PORT=8000"

重新加载与启动Jenkins

systemctl daemon-reload

systemctl start jenkins

systemctl status jenkins.service

查看运行日志

tail -n 200 -f /var/log/jenkins/jenkins.log

2.基于War包的形式部署Jenkins

使用jenkins.war文件,基于Tomcat部署安装jenkins

安装Tomcat

首先安装Tomcat,访问:https://tomcat.apache.org/下载Tomcat
在这里插入图片描述

wget https://dlcdn.apache.org/tomcat/tomcat-9/v9.0.63/bin/apache-tomcat-9.0.63.tar.gz

tar -zxvf apache-tomcat-9.0.63.tar.gz

mv apache-tomcat-9.0.63.tar.gz tomcat

开启Tomcat的管理

配置访问用户:vim tomcat/conf/tomcat-users.xml

<role rolename="manager"/>
<role rolename="manager‐gui"/>
<role rolename="admin"/>
<role rolename="admin‐gui"/>
<user username="tomcat_user" password="tomcat123" roles="admin‐gui,admin,manager‐gui,manager"/>

关闭IP访问限制: vim /usr/local/tomcat/webapps/manager/META-INF/context.xml 将Valve的内容注释掉

<Context antiResourceLocking="false" privileged="true" >
<!‐‐ <Valve className="org.apache.catalina.valves.RemoteAddrValve"
allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" /> ‐‐>
<Manager sessionAttributeValueClassNameFilter="java\.lang\.
(?:Boolean|Integer|Long|Number|String)|org\.apache\.catalina\.filters\.Cs
rfPreventionFilter\$LruCache(?:\$1)?|java\.util\.(?:Linked)?HashMap"/>
</Context

此时只能访问前两项
在这里插入图片描述

注意:网上都说修改manager/META-INF/context.xml,然而不适用于本人使用的当前版本,本人当前使用的Tomcat版本还需要修改host-manager/META-INF/context.xml

ls
docs  examples  host-manager  jenkins  jenkins.war  manager  ROOT

在这里插入图片描述

下载jenkins

访问:https://www.jenkins.io/zh/download/下载Jenkins的War文件
在这里插入图片描述
下载war包

wget https://mirrors.tuna.tsinghua.edu.cn/jenkins/war-stable/2.332.3/jenkins.war

jenkins.war复制到Tomcat的webapps目录

cp jenkins.war /usr/local/tomcat/webapps

启动Tomcat

cd /usr/local/tomcat/bin
./startup.sh 

Using CATALINA_BASE:   /usr/local/tomcat
Using CATALINA_HOME:   /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME:        /usr/local/jdk1.8
Using CLASSPATH:       /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
Using CATALINA_OPTS:   
Tomcat started.

确认是否启动成功: ps -axu | grep tomcat

root     25824  135 14.5 3519360 537092 pts/0  Sl   15:30   0:29 /usr/local/jdk1.8/bin/java -Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize=2048 -Djava.protocol.handler.pkgs=org.apache.catalina.webresources -Dorg.apache.catalina.security.SecurityListener.UMASK=0027 -Dignore.endorsed.dirs= -classpath /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar -Dcatalina.base=/usr/local/tomcat -Dcatalina.home=/usr/local/tomcat -Djava.io.tmpdir=/usr/local/tomcat/temp org.apache.catalina.startup.Bootstrap start
root     26544  0.0  0.0 112828   988 pts/0    S+   15:31   0:00 grep --color=auto tomcat

浏览器访问:http://IP:8080/jenkins/
在这里插入图片描述

3.java -jar方式启动Jenkins

Jenkins的war包可以直接使用java -jar执行启动

# 前台运行
java -jar jenkins.war --httpPort=8080 >> jenkins.log 2>&1 
# 后台运行
nohup java -jar jenkins.war --httpPort=8080 >> jenkins.log 2>&1 &
# jenkins会在构建结束杀掉衍生子进程,导致相关服务启动失败,禁用杀死衍生进程的特性
nohup java -jar jenkins.war -Dhudson.util.ProcessTree.disable=true --httpPort=8080 >> jenkins.log 2>&1 &

4.Docker安装Jenkins

拉取Jenkins镜像

docker pull jenkins/jenkins:lts

查看Jenkins镜像

docker images
REPOSITORY                              TAG          IMAGE ID       CREATED             SIZE
jenkins/jenkins                         lts          697d76eba014   5 months ago        677MB

创建并启动Jenkins容器

docker run -d --name jenkins -p 8088:8080 -p 50000:50000 -v /usr/local/docker/jenkins/:/var/jenkins_home jenkins/jenkins:lts  

这里有个坑,容器创建成功,发现容器并没有启动成功,再次启动容器,发现任然启动失败.原因:Jenkins数据挂载目录需要对其授予权限

查看日志
在这里插入图片描述

创建Jenkins数据挂载目录并授予权限

mkdir jenkins
chmod 777 jenkins/

在这里插入图片描述

对挂载目录授予权限后重新启动容器,发现启动成功.
在这里插入图片描述

安装配置

解锁Jenkins

在这里插入图片描述
按照提示解锁 Jenkins;填入的密文同时也是 admin 账号的密码

cat /root/.jenkins/secrets/initialAdminPassword

3219fd02fd0c46c2b84fff9cc0fd730c

docker安装需要进入容器,从容器启动日志中获取管理密码
在这里插入图片描述

docker logs jenkins

在这里插入图片描述

选择插件安装方式

无论选择哪种方式都不会对后续操作有太大影响,有需要的插件可以在后续有针对性的安装。
在这里插入图片描述
选择安装推荐的插件即可。
在这里插入图片描述
注意:当有打×的插件是由于网络传输导致的安装失败,后面再重新安装即可

创建账号

选择使用admin账户继续,有需要以后再注册新账号在这里插入图片描述

实例配置

Jenkins资源提供绝对路径链接的根地址,默认即可

在这里插入图片描述

Jenkins就绪

点击开始使用Jenkins进入Jenkins首页界面
在这里插入图片描述
在这里插入图片描述

初始化配置

中文设置

进入Manage Jenkins中,点击Manage Plugins
在这里插入图片描述
安装LocaleLocalization: Chinese (Simplified)Localization Support Plugin三个插件,后2个默认已安装
在这里插入图片描述
安装后重启
在这里插入图片描述
进入Manage Jenkins中,点击Configure System
在这里插入图片描述
找到Locale设置 Default Language

在这里插入图片描述
访问:http://IP:8080/jenkins/restart进行重启
在这里插入图片描述

注意: 设置重启后可能还是部分存在英文,此时需要执行如下2步操作即可:

1.找到Locale设置 Default Language的值为:en_us然后重启

2.找到Locale设置 Default Language的值为:zh_CN然后重启

在这里插入图片描述

全局安全配置

关于安全方面的一些配置,看具体需求具体设置
在这里插入图片描述

全局工具配置

配置settings.xml文件

查看Maven安装目录

echo $MAVEN_HOME

/usr/local/maven

配置Maven的settings.xml路径
在这里插入图片描述

配置Java

查看Java安装目录

echo $JAVA_HOME
/usr/local/jdk1.8

在这里插入图片描述

配置Git

安装Git,可参考:https://blog.csdn.net/qq_38628046/article/details/123591295

在这里插入图片描述

配置Maven

配置Maven安装路径
在这里插入图片描述

插件管理

安装Role-based Authorization Strategy插件,实现更精细的权限管理,结合全局安全配置使用
在这里插入图片描述
安装常用插件SVN
在这里插入图片描述
安装Deploy to container部署插件
在这里插入图片描述
还有如:Gitee、GitLab、GitHub等常用插件

基本使用

新建任务

在这里插入图片描述
指定任务名称和任务类型
在这里插入图片描述

配置源码管理

在这里插入图片描述

选择Git,除此之外还常用SVN,不过需要到插件中心安装
在这里插入图片描述

配置SSH

配置SSH,可参考:https://blog.csdn.net/qq_38628046/article/details/123591295;将公钥添加Gitee

cd /root/.ssh

cat id_rsa.pub

在这里插入图片描述

配置凭据的提供者

点击jenkins进行添加凭证
在这里插入图片描述
选择SSH
在这里插入图片描述
配置UserName与SSH的私钥

cd /root/.ssh
# 查看私钥
cat id_rsa

将私钥复制进去
在这里插入图片描述
选择配置的凭证
在这里插入图片描述

配置构建

需要执行一次构建操作,Jenkins才会下载代码
在这里插入图片描述
在这里插入图片描述

配置构建后

部署War文件到容器需要安装Deploy to container部署插件
在这里插入图片描述

war文件相对于项目根目录的路径

浏览器访问使用项目名

在这里插入图片描述
添加运行容器
在这里插入图片描述

配置凭证,即添加配置的tomcat用户,tomcat-users.xml中添加的用户
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

立即构建

在这里插入图片描述
Build History列表选择某项构建,查看控制台输出日志
在这里插入图片描述

在这里插入图片描述
浏览器访问:

在这里插入图片描述

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

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/136964.html

(0)
飞熊的头像飞熊bm

相关推荐

发表回复

登录后才能评论
极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!