栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

Docker运行jenkins发布springboot项目

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Docker运行jenkins发布springboot项目

Docker安装jenkins部署springboot项目发布docker镜像
  1. 先在centos上或者用自己的云服务器安装docker,安装教程这里略过
  2. docker安装完后使用docker命令安装jenkins,这里使用-u root 提升权限,否则后续操作无权限可能无法启动jenkins,使用下列命令创建容器,挂载docker目录是为了在容器内部使用docker命令,jenkins_home里面包含了jenkins后续的工作目录,后面会在容器内部对springboot项目用dockerfile打包成新的镜像,这边推荐换一个映射端口,免得8080发生冲突

docker run -d -p 8081:8080 --name jenkins -u root -v /usr/bin/docker:/usr/bin/docker -v /var/run/docker.sock:/var/run/docker.sock -v /root/jenkins:/var/jenkins_home jenkins/jenkins

  1. 创建完docker容器后,获取jenkins初始化的密码,创建一个管理员账号,直接下一步就好了

    在插件管理页面安装如图所示的插件

  2. 构建一个maven项目,用它来发布maven管理的springboot项目

  3. 选择Git,我这里是用的Gitee,输入对应仓库的地址,这里是http的就可以了,默认master分支


6. 这里可以使用触发器,定时去自动拉取最新的代码编译打包执行流水线

7.构建环境给这个选项打钩,可以看构建过程中控制台输出的日志

8.选择你所要构建的项目的pom.xml文件位置,这个地方是基于你的工作空间 workspace来设定的,
我这里选择我workspace下面的这个项目路径里面的pom.xml,下面的命令是maven执行声明周期命令,用来编译项目,-Dmaven.test.skip=true是跳过项目里面的test

9.自动化构建最关键的就是这个脚本了,打开post steps,先把项目路径下maven构建后的jar包复制到外层目录来,再cd进入当前项目路径下,先略过我删除之前的容器和镜像,这里要执行docker build 构建 dockerfile,dockerfile就是构建一个新的docker镜像,这个镜像里面存放了我们的项目jar包,通过我们的jdk将它在容器内部跑起来,后面的docker run就是启动这个容器,并做端口映射

cp springboot-day01/target/springboot-day01-1.0-SNAPSHOT.jar springboot-day01/test.jar
cd springboot-day01
docker stop test
docker rm test
docker rmi test
docker build -t test .
docker run -id --name=test -p 80:80 test


总结一下踩坑,就是docker build的时候最后面带一个 . ,就是一个点,代表dockerfile的上下文路径,你目前所在的路径下面的文件全部都会被打包到容器里面,如果你所在目录错了,你执行了docker build,那么你的jenkins构建之后,会报一个 cann’t access xxx.jar。就代表你运行dockerfile生成镜像的时候,你所在的路径,找不到你的jar包。
放一下运行成功的截图。


顺便放出我的dockerfile文件里面的内容

FROM openjdk:8
ADD ./test.jar /application.jar
ENTRYPOINT ["java","-jar","/application.jar"]

综上,新手向,如果有问题,可以私信我。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/946095.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号