DevOps系列六(Jenkins实现基础CI操作)

一、Jenkins实现基础CI操作

1.1 通过IDEA创建一个Springboot项目

package com.example.mytest.controller; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RestController; @RestController public class TestController { @GetMapping("/test") public String test(){ return "Hello Jenkins!"; } }

1.2 git上新建一个项目mytest

1.3 IDEA终端执行

git config --global user.name "Administrator"
git config --global user.email "admin@example.com"

1.4 通过IDEA的VCS方式将代码扔到git上


选中项目右键Git-->Commit Directory-->选中所有-->提交

commit成功后,还要把它push到我刚刚创建的仓库里
右键--Git-Push-->origin-->git仓库地址-->ok-->Push

代码就都有了

1.5 Jenkins先创建一个任务

1.6 源码配置

1.7 用户名密码配置


然后应用-保存即可。

1.8 构建

会把代码拉取到jenkins的本地

在jenkins的家目录下,有个workspace目录,所有的工程都会放到此目录。
通过jenkins打包一个target
mytest--配置--构建

选择maven版本--选择需要执行的打包命令--应用--保存

再次构建,因为是第一次通过maven构建,需要下载大量的依赖,所以会慢一些。
构建完成后如下图所示

此时,jenkins的workspace会多出一个target目录,里面会有打包好的jar包

通过jenkins将构建好的jar包发送到目标服务器
项目--配置--构建后操作--send--选择服务器--选择要发送的文件--保存--应用

再次构建。

目标服务器已有传输的jar包

通过dockerfile构建自定义镜像,通过docker-compose构建出镜像并运行起来。

1.9 Dockerfile

FROM daocloud.io/library/java:8u40-jdk COPY mytest.jar /usr/local/ WORKDIR /usr/local CMD java -jar mytest.jar docker-compose.yml version: '3.1' services: mytest: build: context: ./ dockerfile: Dockerfile image: mytest:v1.0.0 container_name: mytest ports: - 8081:8080

1.10代码提交到git

1.11 jenkins配置构建后操作


应用-保存-再次构建
需要先把命令在服务器上面手动执行一次
cd /usr/local/test
cd docker/
mv ../target/jar ./
docker-compose down
docker-compose up -d --build
然后写入绝对路径
cd /usr/local/test/docker
mv ../target/
jar ./
docker-compose down
docker-compose up -d --build
再次构建即可。

此时到服务器上面看,发现容器已正常运行

1.12 页面访问

http://192.168.0.103:8081/test

1.13 注意事项

随着代码的提交,每次执行jenkins构建时,会发现,会出现很多none的镜像,可通过以下命令删除
docker image prune -f
可以将此命令放到jenkins的构建后操作步骤中。
cd /usr/local/test/docker
mv ../target/*jar ./
docker-compose down
docker-compose up -d --build
docker image prune -f

posted @ 2024-07-17 14:24  霸都运维  阅读(1)  评论(0编辑  收藏  举报