美文网首页
Jenkins基本构建

Jenkins基本构建

作者: 小李飞刀_lql | 来源:发表于2021-11-13 08:29 被阅读0次

docker安装

001 准备环境

[root@bogon ~]# tar -xzvf jdk-8u45-linux-x64.tar.gz 

[root@bogon ~]# mv jdk1.8.0_45 /usr/local/jdk

[root@bogon ~]# tar -xzvf apache-maven-3.5.0-bin.tar.gz 

[root@bogon ~]#  mv apache-maven-3.5.0 /usr/local/maven

vi /etc/profile
JAVA_HOME=/usr/local/jdk
PATH=$JAVA_HOME/bin:$PATH:/usr/local/maven/bin
export JAVA_HOME PATH

[root@gitlab ~]# source /etc/profile

#网址
https://developer.aliyun.com/mvn/guide
#阿里云仓库
<mirror>
  <id>aliyunmaven</id>
  <mirrorOf>*</mirrorOf>
  <name>阿里云公共仓库</name>
  <url>https://maven.aliyun.com/repository/public</url>
</mirror>
#修改setting
/usr/local/maven/conf

[root@localhost webapps]# tar -xzvf apache-tomcat-8.5.59.tar.gz 
[root@localhost webapps]# mv apache-tomcat-8.5.59 /usr/local/tomcat
[root@localhost webapps]# cd /usr/local/tomcat/
[root@localhost webapps]# cd webapps/
[root@localhost webapps]# rm -rf *

002 运行jekins

docker run -d --name jenkins -p 8080:8080 -p 50000:50000 -u root \
-v /opt/jenkins_home:/var/jenkins_home \
-v /var/run/docker.sock:/var/run/docker.sock \
-v /usr/bin/docker:/usr/bin/docker \
-v /usr/local/maven:/usr/local/maven \
-v /usr/local/jdk:/usr/local/jdk \
-v /etc/localtime:/etc/localtime \
--restart=always \
--name jenkins jenkins/jenkins:lts

003 查看初始化密码

[root@bogon ~]# docker logs jenkins -f

d88c66cab6024fa7896dc03fa6bf9819

004 自定义安装

选择插件安装

[无]-[安装]

创建用户
1634261140171.png

Jenkins基本配置

001 修改数据源

[root@bogon updates]# cd /opt/jenkins_home/updates
[root@bogon updates]# yum -y install sed
[root@bogon updates]# sed -i 's/https:\/\/updates.jenkins.io\/download/https:\/\/mirrors.tuna.tsinghua.ed u.cn\/jenkins/g' default.json 
[root@bogon updates]# sed -i 's/http:\/\/www.google.com/https:\/\/www.baidu.com/g' default.json

002 重启Jenkins

http://192.168.153.19:8080/restart

003 安装中文插件

{Manage Jenkins}  {Manage Plugins} {Available} 
搜索{Locale plugin}
{Install without restart}
搜索{Chinese (Simplified) }
{Install without restart}
{Manage Jenkins} {Configure System}
{Locale} [zh_cn]
{save}

004 重启Jenkins

http://192.168.153.19:8080/restart
1634265695607.png

Jenkins项目管理

001 新建项目

新建Item
1634287326505.png

002 丢弃旧的构件

1634282591803.png

003 Parameter创建

1634282895359.png

004 Parameter构建

Execute shell

echo $env
1634283297396.png 1634283054567.png
1634283106113.png

005 Parameter发布

Started by user lql
Running as SYSTEM
Building in workspace /var/jenkins_home/workspace/test
[test] $ /bin/sh -xe /tmp/jenkins12267065529969240602.sh
+ echo dev
dev
Finished: SUCCESS
1634283460217.png

006 String Parameter创建

1634283747501.png 1634283794918.png

007 git组件安装

选择 git Source Code Management
1634285526261.png

008 git构建

1634286873077.png
1634286059341.png
1634288861894.png

009 git发布

Started by user lql
Running as SYSTEM
Building in workspace /var/jenkins_home/workspace/test
The recommended git tool is: NONE
using credential 711e362f-2255-4c8c-bb4a-a81353e2ee29
Cloning the remote Git repository
Cloning repository http://192.168.153.18/test/cs.git
 > git init /var/jenkins_home/workspace/test # timeout=10
Fetching upstream changes from http://192.168.153.18/test/cs.git
 > git --version # timeout=10
 > git --version # 'git version 2.30.2'
using GIT_ASKPASS to set credentials 
 > git fetch --tags --force --progress -- http://192.168.153.18/test/cs.git +refs/heads/*:refs/remotes/origin/* # timeout=10
 > git config remote.origin.url http://192.168.153.18/test/cs.git # timeout=10
 > git config --add remote.origin.fetch +refs/heads/*:refs/remotes/origin/* # timeout=10
Avoid second fetch
 > git rev-parse origin/master^{commit} # timeout=10
Checking out Revision 0667e070d384037d463e7bb7cb413520146b8942 (origin/master)
 > git config core.sparsecheckout # timeout=10
 > git checkout -f 0667e070d384037d463e7bb7cb413520146b8942 # timeout=10
Commit message: "Add new file"
First time build. Skipping changelog.
[test] $ /bin/sh -xe /tmp/jenkins13203311460013865620.sh
+ echo dev
dev
+ echo master
master
+ pwd
/var/jenkins_home/workspace/test
+ ls
README.md
index.html
Finished: SUCCESS

Git参数

001 插件下载

Git Parameter

002参数设置

1634524924496.png

003 发布效果

1634525219750.png

Extended Choice Parameter

001 安装插件

Extended Choice Parameter

002 Git Parameter中添加参数

1634537558395.png 1634537882884.png 1634538221326.png

003 发布效果

1634537952773.png

004 文件映射

[root@localhost ~]# docker exec -it jenkins bash
root@b0a6742dcef7:/# cd /var/jenkins_home/
root@b0a6742dcef7:/var/jenkins_home# echo "abc=192.168.1.1,192.168.1.2" >server.list

1634540269390.png 1634538669770.png 1634540221509.png

005 修改配置文件效果

[root@localhost jenkins_home]# vi server.list 
abc=192.168.1.1,192.168.1.2,192.168.1.3
1634539200906.png

分布式构建(Master/Slave)

001 新建节点

Manage Nodes and Clouds
新建节点
192.168.153.19 Master
192.168.153.17 Slave
1634541296545.png 1634541376156.png 1634543895065.png

002 子节点安装jdk和maven环境

[root@localhost jenkins_home]# scp -r /usr/local/jdk/ root@192.168.153.17:/usr/local/
[root@localhost jenkins_home]# scp -r /usr/local/maven/ root@192.168.153.17:/usr/local/ 
[root@localhost local]# vi /etc/profile
----------------------------------------------------
JAVA_HOME=/usr/local/jdk
PATH=$JAVA_HOME/bin:$PATH:/usr/local/maven/bin
export JAVA_HOME PATH
-----------------------------------------------------
[root@localhost local]# source /etc/profile
[root@localhost local]# java -version
java version "1.8.0_45"
Java(TM) SE Runtime Environment (build 1.8.0_45-b14)
Java HotSpot(TM) 64-Bit Server VM (build 25.45-b02, mixed mode)
----------------------------------------------------------------
[root@localhost local]# mvn -version
Apache Maven 3.5.0 (ff8f5e7444045639af65f6095c62210b5713f426; 2017-04-04T03:39:06+08:00)
Maven home: /usr/local/maven
Java version: 1.8.0_45, vendor: Oracle Corporation
Java home: /usr/local/jdk/jre
Default locale: zh_CN, platform encoding: UTF-8
OS name: "linux", version: "3.10.0-862.el7.x86_64", arch: "amd64", family: "unix"

003 在jenkins_home中下载agent.jar

[root@localhost local]# mkdir /opt/jenkins_home
[root@localhost local]# cd /opt/jenkins_home
[root@localhost jenkins_home]# wget http://192.168.153.19:8080/jnlpJars/agent.jar

004 启动节点

nohup java -jar agent.jar -jnlpUrl http://192.168.153.19:8080/computer/test1/jenkins-agent.jnlp -secret 20f903f4b74ac005ba1de92a3aa08ff73327c28741ef3753d106a894bd2ad05b -workDir "/opt/jenkins_home"  &>slave.log &

005 指定运行的Slave节点

1634544493182.png

006 查看效果

1634544558011.png 1634544784323.png

拷贝构建文件到远程服务器

001 安装插件Publish Over SSH

Publish Over SSH

002 服务器端生产密钥

[root@localhost ~]# ssh-keygen

003 将id_rsa.pub公钥内容添加到目标服务器

[root@localhost .ssh]# ssh-copy-id root@192.168.153.17

004 远程登录客户端

[root@localhost .ssh]# ssh-copy-id root@192.168.153.17
[root@localhost ~]# ip addr
inet 192.168.153.17/24 brd 192.168.153.255 scope global noprefixroute ens32

005 配置Publish over SSH

[root@localhost .ssh]# cat id_rsa
1634613114765.png 1634613158188.png

006 构建项目

1634613370545.png 1634613398733.png

007 验证

Source files :当前的workspace下(当前拉完代码的目录下)
----------构建完成后17服务器----------------------------------
[root@localhost test]# ls /tmp/test/
index.html  README.md

远程服务器执行shell

001 下载ssh插件

ssh

002 配置远程主机

1634613719073.png

003 配置Credentials

1634611972830.png 1634612029997.png

004 构建项目

1634612319305.png 1634613840062.png

相关文章

网友评论

      本文标题:Jenkins基本构建

      本文链接:https://www.haomeiwen.com/subject/dywozltx.html