如何在Linux上部署Jenkins
Jenkins是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件项目可以进行持续集成。
Jenkins功能包括:
1、持续的软件版本发布/测试项目。
2、监控外部调用执行的工作。
本篇文章将手把手教你安装Jenkins。 01 下载安装Ubuntu 镜像下载地址为: https://releases.ubuntu.com/16.04.7/ubuntu-16.04.7-desktop-amd64.iso 02 安装配置JDK 2.1 下载JDK(官网) https://www.oracle.com/java/technologies/downloads/ 2.2 安装 2.2.1 解压 2.2.2 将解压后的jdk移动至自己想要的文件夹中 2.3 修改环境变量相关配置文件 2.3.1 进入配置文件进行编辑 2.3.2 编辑如下内容保存后退出 2.4 测试环境变量配置 03 安装Jenkins 3.1 下载 建议自行在Jenkins官网上下载合适的安装包,并进行解压。 官网下载地址:https://www.jenkins.io/ 3.2 安装步骤 3.2.1 使用以下命令导入Jenkins存储库的GPG密钥: 3.2.2 使用以下命令将Jenkins存储库添加到系统中: 3.2.3 启用Jenkins存储库后,更新apt软件包列表并通过键入以下命令安装最新版本的Jenkins: 3.2.4 收到错误信息: 提示 Error: W: GPG error: https://pkg.jenkins.io/debian-stable binary/ Release: The following signatures couldn’t be verified because the public key is not available: NO_PUBKEY 9B7D32F2D50582E6", 可以通过以下方式导入密钥: sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 9B7D32F2D50582E6 3.2.5 这里启动jenkins失败,报错信息如下: ● jenkins.service - LSB: Start Jenkins at boot time Loaded: loaded (/etc/init.d/jenkins; bad; vendor preset: enabled) Active: failed (Result: exit-code) since Mon 2018-05-14 05:47:25 PDT; 6ms ago Docs: man:systemd-sysv-generator(8) Process: 2990 ExecStart=/etc/init.d/jenkins start (code=exited, status=1/FAILURE) May 14 05:47:25 ubuntu systemd[1]: Starting LSB: Start Jenkins at boot time... May 14 05:47:25 ubuntu jenkins[2990]: ERROR: No Java executable found in current PATH: /bin:/usr/bin:/sbin:/usr/sbin........... 根据报错信息 ERROR: No Java executable found in current PATH: /bin:/usr/bin:/sbin:/usr/sbin 可以看出主要是找不到jdk的bin文件,查看环境变量: echo $PATH 如果有jdk,那么就创建一条软链接: 然后进入.bashrc配置环境变量:vi ~/.bashrc 配置信息如下: 3.2.6 再次查看Jenkins状态: 3.2.7 访问Jenkins: 浏览器访问:http://服务器IP:8080/ 3.2.8 初次访问需要初始化密码 密码位置: Jenkins安装目录下的secrets/initialAdminPassword 3.2.9 创建自己的Jenkins账户 04 Jenkins之“疑难杂症” 4.1Git仓库服务器协议改为htts时,Jenkins连接仓库服务器失败 4.1.1Linux解决方案: 在Jenkins用户下取消证书验证即可: 4.1.2Windows解决方案: 打开Git安装目录下的C:\Program Files\Git\mingw64\etc\.gitconfig文件,将该文件内容添加如下: 4.2下载源码时间过长导致git连接超时中断 在源码管理处添加Advanced clone behaviours(如图4.1),设置合适的克隆和拉取操作的超时时间即可 ▲图 4.1 添加Advanced clone behaviourstar -zxvf jdk-8u291-linux-x64.tar.gz
mkdir /opt/javamv xxxxxx/jdk1.8.0_291 /opt/java
vi /etc/profile
export JAVA_HOME=/opt/java/jdk1.8.0_291export CLASSPATH=$:CLASSPATH:$JAVA_HOME/lib/export PATH=$PATH:$JAVA_HOME/bin
source /etc/profilejava -version
wget -q -O - https://pkg.jenkins.io/debian-stable/jenkins.io.key | sudo apt-key add -
sudo sh -c 'echo deb https://pkg.jenkins.io/debian-stable binary/ > /etc/apt/sources.list.d/jenkins.list'
sudo apt-get updatesudo apt-get install jenkins
ln -s /usr/jdk1.8.0_131/bin/java /usr/bin/java(/usr/jdk1.8.0_131指的是自己jdk所在 的路径)
export JAVA_HOME=/usr/jdk1.8.0_131export JRE_HOME=${JAVA_HOME}/jreexport PATH=${JAVA_HOME}/bin:${PATH}export CLASSPATH=.:${JAVA_HOME}/lib/dt.jar:${JAVA_HOME}/lib/tools.jart
systemctl status jenkins
git config --global http.sslVerify false
[http "https://gitea.xxxxx.com"] sslVerify = false