一、安装准备
1、系统要求
最低要求 | |
---|---|
CPU | 支持 64 位的 Intel® 或 AMD 处理器*;2 GHz 或速度更快的处理器 |
内存 | 2 GB 或更大 RAM(推荐使用 4 GB) |
硬盘 | 需要 5GB 以上的可用磁盘空间 |
操作系统 | CentOS 7 或更高版本 |
2、软件要求
- JDK 8+
一、环境设置
1、设置镜像源
因为国外镜像网速较慢,推荐设置阿里云镜像源:https://opsx.alibaba.com/mirror
1、备份
[root@jenkins ~]# mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
2、下载新的CentOS-Base.repo 到/etc/yum.repos.d/
[root@jenkins ~]# wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
或者
[root@jenkins ~]# curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
1.3、之后运行yum makecache生成缓存
[root@docker]# sudo yum makecache all;
1.4、执行yum update 更新系统组件到最新版本
[root@docker]# sudo yum update -y;
2、配置静态IP
通常在/etc/sysconfig/network-scripts
目录下都会有 ifcfg-eth0
格式文件,修改该文件内容:
[root@jenkins ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth0
主要修改BOOTPROTO="static"
、ONBOOT="yes"
,并增加 IPADDR
、NETMASK
、GATEWAY
、DNS1
。
TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="static"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="eth0"
UUID="5b07acd3-b8bf-4a9e-b471-8e6330f2b622"
DEVICE="eth0"
ONBOOT="yes"
IPADDR=192.168.1.102
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
DNS1=119.29.29.29
ZONE=public
重启网卡
[root@jenkins ~]# service network restart
3、关闭防火墙
常用命令
[root@jenkins]# systemctl start firewalld 启动
[root@jenkins]# systemctl stop firewalld 关闭
[root@jenkins]# systemctl status firewalld 查看状态
[root@jenkins]# systemctl disable firewalld 开机禁用
[root@jenkins]# systemctl enable firewalld 开机启用
三、服务安装
1、安装JDK
$ sudo yum install java-11-openjdk
2、安装jenkins
导入jenkins密钥,执行如下命令:
$ 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
到官网下载jenkis的rmp包,官网地址(http://pkg.jenkins-ci.org/redhat-stable/)
$ wget https://pkg.jenkins.io/redhat-stable/jenkins-2.176.2-1.1.noarch.rpm
$ rpm -ivh jenkins-2.176.2-1.1.noarch.rpm
添加依赖:
由于jdk11删除了不少包,所以根据官网指示,需要添加一些依赖的jar包:
jaxb-api-2.3.0.jar (save as jaxb-api.jar)
jaxb-core-2.3.0.1.jar (save as jaxb-core.jar)
jaxb-impl-2.3.0.1.jar (save as jaxb-impl.jar)
javax.activation v.1.2.0 (save as javax.activation.jar)
详见官网: https://jenkins.io/blog/2018/12/14/java11-preview-availability/
将四个包下载到 /usr/lib/jenkins 下和jenkins.war放一起比较合适
配置jenkis:
$ vi /etc/sysconfig/jenkins
找到”JENKINS_JAVA_OPTIONS”,修改为如下:
JENKINS_JAVA_OPTIONS=”-Djava.awt.headless=true -p /usr/lib/jenkins/jaxb-api-2.3.0.jar:/usr/lib/jenkins/javax.activation.jar –add-modules java.xml.bind,java.activation -cp /usr/lib/jenkins/jaxb-core-2.3.0.1.jar:/usr/lib/jenkins/jaxb-impl-2.3.0.1.jar”
找到”JENKINS_ARGS”,修改为如下:
JENKINS_ARGS=”–enable-future-java”
找到修改端口号:
JENKINS_PORT=”8080” 此端口不冲突可以不修改
3、启动jenkins
$ systemctl start jenkins.service
- 安装成功后Jenkins将作为一个守护进程随系统启动
- 系统会创建一个“jenkins”用户来允许这个服务,如果改变服务所有者,同时需要修改/var/log/jenkins, /var/lib/jenkins, 和/var/cache/jenkins的所有者
- 启动的时候将从/etc/sysconfig/jenkins获取配置参数
- 默认情况下,Jenkins运行在8080端口,在浏览器中直接访问该端进行服务配置
- Jenkins的RPM仓库配置被加到/etc/yum.repos.d/jenkins.repo
4、打开 Jenkins
在浏览器中访问
首次进入会要求输入初始密码如下图,
初始密码在:/var/lib/jenkins/secrets/initialAdminPassword
选择“Install suggested plugins”安装默认的插件,下面Jenkins就会自己去下载相关的插件进行安装。
创建超级管理员账号:
5、修改Jenkins路径
Jenkins的默认安装路径是/var/lib/jenkins 现在由于这个根目录的磁盘太小,所以切换到/www 目录下。
Jenkins目录、端口、工作目录等信息在/etc/sysconfig/jenkins 下,所以需要修改这个文件。
将JENKINS_HOME=”/var/lib/jenkins” 改成JENKINS_HOME=”/www/jenkins”
并将/var/lib/jenkins 路径的文件拷贝到/www/ 下。
$ sudo cp -a /var/lib/jenkins/ /www/
如果是后期修改,需要修改下面文件:
vi /etc/sysconfig/jenkins
## Path: Development/Jenkins
## Description: Jenkins Automation Server
## Type: string
## Default: "/var/lib/jenkins"
## ServiceRestart: jenkins
#
# Directory where Jenkins store its configuration and working
# files (checkouts, build reports, artifacts, ...).
#
JENKINS_HOME="/www/jenkins"
## Type: string
## Default: "jenkins"
## ServiceRestart: jenkins
#
# Unix user account that runs the Jenkins daemon
# Be careful when you change this, as you need to update
# permissions of $JENKINS_HOME and /var/log/jenkins.
#
#JENKINS_USER="jenkins"
JENKINS_USER="root"
jenkins构建任务时,maven命令报错:Could not create local repository at /root/.m2/repository
解决方法:修改配置文件/etc/sysconfig/jenkins,将执行用户改为root,然后重启
6、彻底卸载jenkins
$ service jenkins stop
$ yum clean all
$ yum -y remove jenkins
$ rm -rf /var/cache/jenkins
$ rm -rf /var/lib/jenkins/
FAQ
- Jenkins安装完之后会自行生成一个Jenkins的账号,密码未知。另外,运行sudo su jenkins 命令时会出现无法切换的情况。这个是因为Jenkins在安装的/etc/passwd 文件中/bin/bash 变成了/bin/false 引起的。
解决方法是:
- sudo vim /etc/passwd
- 修改 passwd文件中的/bin/false 变成/bin/bash
- 在修改完passwd文件之后再运行sudo su jenkins 还会出现bash-4.2 而不是jenkins用户。
- 需要运行export PS1=’[\u@\h \W]$‘ 才能正常切换到jenkins用户。
更新时间:2023-12-28 09:15