mall学习教程官网:
macrozheng.com
来源:blog.csdn.net/zqqiang0307/article/details/120458586
本文章实现最简单全面的Jenkins+docker+springboot 一键自动部署项目,步骤齐全,少走坑路。
环境
:centos7+git(gitee)
简述实现步骤:在docker安装jenkins,配置jenkins基本信息,利用Dockerfile和shell脚本实现项目自动拉取打包并运行。
安装docker
docker 安装社区版本CE
yum update
yum remove docker docker-common docker-selinux docker-engine
yum install -y yum-utils device-mapper-persistent-data lvm2
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
yum install docker-ce #由于repo中默认只开启stable仓库,故这里安装的是最新稳定版17.12.0
yum install # 例如:sudo yum install docker-ce-17.12.0.ce
systemctl start docker
systemctl enable docker
docker version
这或许是一个对你有用的开源项目
,mall项目是一套基于
SpringBoot3
+ JDK 17 + Vue 实现的电商系统(
Github标星60K
),采用Docker容器化部署,后端支持多模块和微服务架构。包括前台商城项目和后台管理系统,能支持完整的订单流程!涵盖商品、订单、购物车、权限、优惠券、会员、支付等功能!
-
Boot项目:
https://github.com/macrozheng/mall
-
Cloud项目:
https://github.com/macrozheng/mall-swarm
-
视频教程:
https://www.macrozheng.com/video/
项目演示:
安装Jenkins
Jenkins中文官网:https://www.jenkins.io/zh/
docker 安装一切都是那么简单,注意检查8080是否已经占用!如果占用修改端口
docker run --name jenkins -u root --rm -d -p 8080:8080 -p 50000:50000 -v /var/jenkins_home:/var/jenkins_home -v /var/run/docker.sock:/var/run/docker.sock jenkinsci/blueocean
如果没改端口号的话
安装完成后访问地址->
http://{部署Jenkins所在服务IP}:8080
此处会有几分钟的等待时间。
详情见官网教程->
https://www.jenkins.io
进入Jenkins容器:
docker exec -it {Jenkins容器名} bash
例如
docker exec -it jenkins bash
查看密码:
cat /var/lib/jenkins/secrets/initialAdminPassword
复制密码到输入框里面
选择第一个:安装推荐的插件
此账户一定要记住哦
系统配置
进入【
首页
】–【
系统管理
】–【
插件管理
】–【
可选插件
】
搜索以下需要安装的插件,点击安装即可。
-
-
安装Publish Over SSH(如果不需要远程推送,不用安装)
-
如果使用Gitee 码云,安装插件Gitee(Git自带不用安装)
-
进入【
首页
】–【
系统管理
】–【
全局配置
】,拉到最下面maven–maven安装
创建任务
点击【
新建任务
】,输入任务名称,点击构建一个自由风格的软件项目
点击【
源码管理
】–【
Git
】,输入仓库地址,添加凭证,选择好凭证即可。
点击【
构建触发器
】–【
构建
】–【
增加构建步骤
】–【
调用顶层Maven目标
】–【
填写配置
】–【
保存
】
此处命令只是install,看是否能生成jar包
clean install -Dmaven.test.skip=true
点击【
保存
】按钮即可
测试
该功能测试是否能正常打包
点击构建按钮
点击正在构建的任务,或者点击任务名称,进入详情页面,查看控制台输出,看是否能成功打成jar包。
该处日志第一次可能下载依赖jar包失败,再次点击构建即可成功。
cd /var/jenkins_home/workspace
ll
命令即可查看是否存在
运行项目
因为我们项目和jenkins在同一台服务器,所以我们用shell脚本运行项目,原理既是通过dockerfile 打包镜像,然后docker运行即可。
在springboot项目根目录新建一个名为Dockerfile的文件,注意没有后缀名,其内容如下:(大致就是使用jdk8,把jar包添加到docker然后运行prd配置文件)
FROM jdk:8
VOLUME /tmp
ADD target/zx-order-0.0.1-SNAPSHOT.jar app.jar
EXPOSE 8888
ENTRYPOINT ["Bash","-DBash.security.egd=file:/dev/./urandom","-jar","/app.jar","--spring.profiles.active=prd"]
配置如下: