Jenkins是一个开源的、提供友好操作界面的持续集成(CI)工具,起源于Hudson(Hudson是商用的),主要用于持续、自动的构建/测试软件项目、监控外部任务的运行(这个比较抽象,暂且写上,不做解释)。Jenkins用Java语言编写,可在Tomcat等流行的servlet容器中运行,也可独立运行。通常与版本管理工具(SCM)、构建工具结合使用。常用的版本控制工具有SVN、GIT,构建工具有Maven、Ant、Gradle。
首选需要安装JAVA环境,最新版要求安装JDK11,根据实际情况安装
安装Git
yum install git
jenkins官方下载
https://www.jenkins.io/zh/download/
可以看到有centos安装介绍,按照官方操作即可
sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key yum install epel-release # repository that provides 'daemonize' yum install java-11-openjdk-devel yum install jenkins
配置jenkins
vim /etc/sysconfig/jenkins
修改端口和运行用户
## Type: integer(0:65535) ## Default: 8080 ## ServiceRestart: jenkins # # Port Jenkins is listening on. # Set to -1 to disable # # JENKINS_PORT="10010" ## 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="root"
修改目录权限
chown -R root:root /var/lib/jenkins chown -R root:root /var/cache/jenkins chown -R root:root /var/log/jenkins
重启,两种方式均可
service jenkins restart systemctl restart jenkins
上面的访问端口已经修改为10010,所以IP+10010来访问jenkins
注意:本服务器把防火墙关闭了,如果开启防火墙,需要在防火墙添加端口
查看密码进行登录
cat /var/lib/jenkins/secrets/initialAdminPassword
因为Jenkins插件需要连接默认官网下载,速度非常慢,而且经过会失败,所以我们暂时先跳过插件安装。
当然也可以选择立即安装,反正我这里直接全部安装也是一会儿的事
插件安装完成以后将会创建管理员账户,当然以可以直接使用admin来操作
如果之前没有安装插件,进行下一步,配置插件下载地址和安装汉化插件
服务器上修改jenkins插件配置
cd /var/lib/jenkins/updates sed -i 's/http:\/\/updates.jenkins-ci.org\/download/https:\/\/mirrors.tuna.tsinghua.edu.cn\/jenkins/g' default.json sed -i 's/http:\/\/www.google.com/https:\/\/www.baidu.com/g' default.json
然后进入jenkins,打开Manage Jenkins,点击Manage Plugins,点击Advanced,把Update Site改为国内插件下载地址
https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json
Sumbit后,在浏览器输入:http://IP:10010/restart,重启Jenkins。
然后进入jenkins,打开Manage Jenkins,点击Manage Plugins,点击Available,搜索chinese,安装后重启,但是只是部分汉化,并非完全的。