Jenkins本身并不是流水线,可以把Jenkins看作一个遥控器,在这里点击按钮即可。当你点击按钮时会发生什么取决于遥控器要控制的内容。Jenkins为其他应用程序API、软件库、构建工具等提供了一种插入Jenkins的方法,它可以执行自动化任务。Jenkins本身不执行任何功能,但随着其它工具的插入而变得越来越强大。

本文使用环境为ubuntu20.04+java11。问题记录和方法记录更新ing…

ubuntu环境下安装Jenkins

方法一 war包安装

参考链接指路

1-3

# 1. 创建部署目录
cd /home/swp/
mkdir jenkins

# 2. 下载Jenkins
cd jenkins
wget https://mirrors.tuna.tsinghua.edu.cn/jenkins/war/latest/jenkins.war
	## 完成此步后jenkins文件夹下出现文件jenkins.war

# 3. 日志存放目录
mkdir logs

4. 启动脚本设置

vim run_jenkins.sh

写入内容:

#!/bin/bash
export JENKINS_HOME=/home/swp/jenkins
cd $JENKINS_HOME
nohup java -Dhudson.model.DownloadService.noSignatureCheck=true -Xmx2g -jar jenkins.war --httpPort=8080 > logs/jenkins.log 2>&1 &
tail -f logs/jenkins.log

5. 创建配置文件

vim hudson.model.UpdateCenter.xml

写入内容:

<?xml version='1.1' encoding='UTF-8'?>
<sites>
        <site>
        <id>default</id>
        <url>https://updates.jenkins-zh.cn/update-center.json</url>
</site> 

6. 运行Jenkins

sudo chmod 777 run_jenkins.sh
sh run_jenkins.sh

  此处出现报错Failed to bind to 0.0.0.0/0.0.0.0:8080以及Failed to start jetty,解决方法见问题记录1.

方法二 apt安装

参考链接指路

依次执行如下命令:

sudo apt-get install --reinstall ca-certificates

wget -q -O - https://pkg.jenkins.io/debian/jenkins-ci.org.key | sudo apt-key add -

sudo sh -c 'echo deb http://pkg.jenkins.io/debian-stable binary/ > /etc/apt/sources.list.d/jenkins.list'

sudo apt update	# 该步可能会报错Could not connect to pkg.jenkins.io:80,多执行几次,反复试

# 安装
sudo apt install jenkins

问题记录

1. 启动jenkins报错 Failed to start Jetty或Failed to bind to 0.0.0.0/0.0.0.0:8080或Address already in use

参考链接指路
修改位于/usr/lib/systemd/system/jenkins.service配置文件中的端口号(将8080换为其他,如8081):

# Port to listen on for HTTP requests, set to -1 to disable.
# To be able to listen on privilleges ports (port number less than 1024),
# add the CAP_NET_BIND_SERIVICE capability to the AmbientCapablities
# directive below.
Environment="JENKINS_PORT=8081" 

修改后执行命令systemctl daemon-reload,之后重新启动jenkins即可。

方法记录

1. 查看jenkins安装状态

systemctl status jenkins

出现如下则表示安装成功:
在这里插入图片描述

2. Jenkins的启动与暂停

# 启动jenkins服务
sudo systemctl start jenkins

# 停止jenkins服务
sudo systemctl stop jenkins

3. Jenkins默认用户的修改

问题描述: 编写的脚本在本地可以正常运行,但是在jenkins上则报错权限不够。
解决方案: 将JENKINS_USER修改为root(原本为jenkins)。修改方法如下:

百度上修改jenkins默认用户的方法很多,大多为直接修改/etc/sysconfig/jenkins文件,不再详述(都不适用于我…)。
附上两个链接供参考:
 链接1:查询Jenkins配置文件的目录
 链接2:Jenkins以root用户运行

本文记录的方法适用于不存在/etc/sysconfig文件夹的情况,且在/etc/init.d/jenkins文件里也找不到jenkins配置文件的路径

cd /usr/lib/systemd/system
sudo vim jenkins.service

在这里插入图片描述
修改User为root,保存修改。执行如下命令:

sudo chown -R root:root /var/lib/jenkins
sudo chown -R root:root /var/cache/jenkins
sudo chown -R root:root /var/log/jenkins
systemctl daemon-reload
systemctl restart jenkins

至此,完成jenkins默认用户的修改。
在这里插入图片描述
通过whoami命令查询当前用户,显示如下:
在这里插入图片描述
可以看到用户已成功修改为root。

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐