简介
Jenkins是一个独立的开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能。前身是Hudson是一个可扩展的持续集成引擎。
LINUX环境Jenkins下载安装
进入Jenkins官网的下载地址
选择稳定版,能避免不少奇奇怪怪的问题
下载好rpm包,传至服务器, 由于Jenkins基于java,所以安装Jenkins之前必须的有jdk环境。
在服务器,使用命令java -version
验证安装
使用rpm -ivh jenkins-2.176.1-1.1.noarch.rpm
完成安装
使用service jenkins start
命令启动服务,如图即完成启动。
访问 http://你的服务器ip:8080
,默认端口号为8080,端口号冲突请自行修改,修改路径为:vi /etc/sysconfig/jenkins
进入验证页面,使用命令vi /var/lib/jenkins/secrets/initialAdminPassword
查看密码并输入,进入插件安装页
选择Install suggested plugins
安装默认插件。
正在安装插件,如安装失败属于正常情况,待安装完毕在插件管理重新安装即可
插件完成后,新建用户即可进入首页
选择“系统管理”>“插件管理”,安装maven和git(已完成安装的可以不做这一步)
选择“可选插件”选项卡,搜索maven,在列表中选择Maven Integration ,点击“直
接安装”按钮
看到如下图时,表示已经完成,同样的方法安装git
选择系统管理,全局工具配置
JDK和maven路径设置成服务器配置的环境变量即可
docker配置
修改服务器的docker配置,让其可以远程访问
vi /lib/systemd/system/docker.service
其中ExecStart=后添加配置-H tcp://0.0.0.0:2375 -H unix://var/run/docker.sock
刷新配置,重启服务
systemctl daemon-reload
systemctl restart docker
docker start registry
需要部署的服务的pom文件引入依赖(注意这里2个端口号不能随意设置,5000的ip为远程仓库的端口,2375为上面设置的远程连接端口)
<build>
<finalName>app</finalName>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
<plugin>
<groupId>com.spotify</groupId>
<artifactId>docker-maven-plugin</artifactId>
<configuration>
<imageName>服务器ip:5000/${project.artifactId}:${project.version}</imageName>
<baseImage>java</baseImage>
<entryPoint>["java", "-jar", "/${project.build.finalName}.jar"]</entryPoint>
<resources>
<resource>
<targetPath>/</targetPath>
<directory>${project.build.directory}</directory>
<include>${project.build.finalName}.jar</include>
</resource>
</resources>
<dockerHost>服务器ip:2375</dockerHost>
</configuration>
</plugin>
</plugins>
</build>
以上配置会自动生成Dockerfile
FROM jdk1.8
ADD app.jar /
ENTRYPOINT ["java","‐jar","/app.jar"]
Jenkins持续集成
回到首页,点击新建按钮 .如下图,输入名称,选择创建一个Maven项目,点击OK
源码管理,选择Git,URL填写GitHub或者码云的项目地址,添加全局凭据,设置为用户名、密码即可
也可以使用配置公钥,具体方法自行百度,这里不赘述
build配置,配置pom文件和构建命令保存即可,该命令会在完成构建完成后自动创建镜像并传到docker
仓库中
返回首页,在列表中找到我们刚才创建的任务
点击右边的绿色箭头按钮,即可执行此任务.
点击下面正在执行的任务
可查看实时日志
看到下图的输出信息即构建完成
我们在浏览器看一下docker私有仓库
http://你的服务器ip:5000/v2/_catalog ,会看到yixin-eureka已经上传成功了
然后登上服务器使用docker images
命令查看刚才创建的镜像
创建容器docker run -d --name=yixin-eureka -p 6868:6868 你的ip:5000/yixin-eureka:1.0-SNAPSHOT
然后访问这个eureka服务验证,就完成啦