1. 部署中的痛点
为什么要用Jenkins?我说下我以前开发的痛点,在一些中小型企业,每次开发一个项目完成后,需要打包部署,可能没有专门的运维人员,只能开发人员去把项目打成一个exe包,可能这个项目已经上线了,需要把服务关,在部署到服务器上,将项目启动起来,这个时候可能某个用户正在操作某些功能上的东西,如果你隔三差五的部署一下,这样的话对用户的体验也不好,自己也是烦的很,总是打包拖到服务器上。希望小型企业工作人员学习一下,配置可能复杂,但是你配置好了之后,你只需要把代码提交到Git或者Svn上,自动构建部署,非常方便。
2. 什么是jenkins
Jenkins是一个开源的、提供友好操作界面的持续集成(CI)工具,起源于Hudson(Hudson是商用的),主要用于持续、自动的构建/测试软件项目、监控外部任务的运行(这个比较抽象,暂且写上,不做解释)。Jenkins用Java语言编写,可在Tomcat等流行的servlet容器中运行,也可独立运行。通常与版本管理工具(SCM)、构建工具结合使用。常用的版本控制工具有SVN、GIT,构建工具有Maven、Ant、Gradle。
3. jenkins的安装和配置
这个jenkins我们不会直接安装在 192.168.0.104 我们会在一个新的虚拟机上运行 192.168.0.102,我们会在下一节课中专门讲解
安装java
yum install java-1.8.0-openjdk* -y
如果需要安装新版本的jenkins请安装java11
yum install java-11-openjdk-devel
mac用户请参考: https://www.jianshu.com/p/8e82d7429528
- 下载jenkins
jenkins-2.375.1-1.1.noarch.rpm
https://mxshop-files.oss-cn-hangzhou.aliyuncs.com/jenkins/jenkins-2.375.1-1.1.noarch.rpm
上传安装包并安装
rpm -ivh jenkins-2.284-1.1.noarch.rpm
修改jenkins配置
新版的jenkins端口修改请参考下面文章:
https://www.cnblogs.com/zjfjava/p/16084023.htmlvim /etc/sysconfig/jenkins
可以修改下面两个配置
JENKINS_USER="root" #这里改为root 会省去很多权限的麻烦
JENKINS_PORT="8080"
启动jenkins
systemctl start jenkins
关闭防火墙
使用命令“systemctl status firewalld.service”查看防火墙状态: systemctl stop firewalld.service systemctl disable firewalld.service
- 在浏览器中访问
输入 http://192.168.0.104:8080 会看到下面页面
需要我们输入密码,初始化密码可以通过下面命令查找到
cat /var/lib/jenkins/secrets/initialAdminPassword
看到下面内容:
复制出来输入到密码框即可
接下来进入插件安装提示页面
但是因为插件下载地址是官方地址,所以会很慢,我们要跳过安装后续自己安装,我们点击右侧的 “选择插件来安装”进入:
然后选择 “无”,进入新建用户页面
然后安装提示一路点击 最后进入主界面
docker安装jenkins报错解决
进入到jenkins容器,修改jenkins更新镜像源