关键词:
点击关注公众号,实用技术文章及时了解
本文章实现最简单全面的Jenkins+docker+springboot
一键自动部署项目,步骤齐全,少走坑路。
环境:centos7+git(gitee)
简述实现步骤:在docker安装jenkins,配置jenkins基本信息,利用Dockerfile和shell脚本实现项目自动拉取打包并运行。
一、安装docker
docker安装社区版本CE
1.确保 yum 包更新到最新。
yum update
2.卸载旧版本(如果安装过旧版本的话)
yum remove docker docker-common docker-selinux docker-engine
3.安装需要的软件包
yum install -y yum-utils device-mapper-persistent-data lvm2
4.设置yum源
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
5.安装docker
yum install docker-ce #由于repo中默认只开启stable仓库,故这里安装的是最新稳定版17.12.0
yum install <自己的版本> # 例如:sudo yum install docker-ce-17.12.0.ce
6.启动和开机启动
systemctl start docker
systemctl enable docker
7.验证安装是否成功
docker version
二、安装Jenkins
Jenkins中文官网:
https://www.jenkins.io/zh/
1.安装Jenkins
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
此处会有几分钟的等待时间。
2.初始化Jenkins
2.1 解锁Jenkins
进入Jenkins容器:
docker exec -it Jenkins容器名 bash
例如
docker exec -it jenkins bash
查看密码:
cat /var/lib/jenkins/secrets/initialAdminPassword
复制密码到输入框里面
2.2 安装插件
选择第一个:安装推荐的插件
2.3 创建管理员用户
此账户一定要记住哦
三、系统配置
1. 安装需要插件
进入【首页】–【系统管理】–【插件管理】–【可选插件】
搜索以下需要安装的插件,点击安装即可。
安装
Maven Integration
安装
Publish Over SSH
(如果不需要远程推送,不用安装)如果使用Gitee 码云,安装插件Gitee(Git自带不用安装)
2. 配置Maven
进入【首页】–【系统管理】–【全局配置】,拉到最下面maven–maven安装
四、创建任务
1. 新建任务
点击【新建任务】,输入任务名称,点击构建一个自由风格的软件项目
2. 源码管理
点击【源码管理】–【Git】,输入仓库地址,添加凭证,选择好凭证即可。
3.构建触发器
点击【构建触发器】–【构建】–【增加构建步骤】–【调用顶层Maven目标】–【填写配置】–【保存】
此处命令只是install,看是否能生成jar包
clean install -Dmaven.test.skip=true
4. 保存
点击【保存】按钮即可
五、测试
该功能测试是否能正常打包
1. 构建
点击构建按钮
2.查看日志
点击正在构建的任务,或者点击任务名称,进入详情页面,查看控制台输出,看是否能成功打成jar包。
该处日志第一次可能下载依赖jar包失败,再次点击构建即可成功。
3. 查看项目位置
cd /var/jenkins_home/workspace
ll
即可查看是否存在
六、运行项目
因为我们项目和jenkins在同一台服务器,所以我们用shell脚本运行项目,原理既是通过dockerfile 打包镜像,然后docker运行即可。
1. Dockerfile
在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 ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar","--spring.profiles.active=prd"]
2. 修改jenkins任务配置
配置如下:
-t
:指定新镜像名.
:表示Dockfile在当前路径
cd /var/jenkins_home/workspace/zx-order-api
docker stop zx-order || true
docker rm zx-order || true
docker rmi zx-order || true
docker build -t zx-order .
docker run -d -p 8888:8888 --name zx-order zx-order:latest
备注:
我上图用了
docker logs -f
是为了方便看日志,真实不要用,因为会一直等待日志,构建任务会失败加
|| true
是如果命令执行失败也会继续实行,为了防止第一次没有该镜像报错
3. 保存
点击保存即可
4. 构建
查看jenkins控制台输出,输出如下,证明成功!
5. 验证
docker ps
查看是否有自己的容器docker logs
自己的容器名 查看日志是否正确浏览器访问项目试一试
来源:blog.csdn.net/zqqiang0307/article/
details/120458586
推荐
PS:因为公众号平台更改了推送规则,如果不想错过内容,记得读完点一下“在看”,加个“星标”,这样每次新文章推送才会第一时间出现在你的订阅列表里。点“在看”支持我们吧!
jenkins+docker一键自动化部署springboot项目(代码片段)
点击关注公众号,实用技术文章及时了解本文章实现最简单全面的Jenkins+docker+springboot一键自动部署项目,步骤齐全,少走坑路。环境:centos7+git(gitee)简述实现步骤:在docker安装jenkins,配置jenkins基... 查看详情
docker+jenkins一键自动化部署超简单~(代码片段)
一、安装Docker很简单,一步步执行即可。1、卸载旧版本(有些系统可能会自带)yumremovedocker\\docker-client\\docker-client-latest\\docker-common\\docker-latest\\docker-latest-logrotate\\docker-logrotate\\docker-engine 2、安装yum-utils包yuminstall-yyum-utils3、设... 查看详情
jenkins+docker一键自动化部署springboot项目(代码片段)
点击关注公众号,实用技术文章及时了解本文章实现最简单全面的Jenkins+docker+springboot一键自动部署项目,步骤齐全,少走坑路。环境:centos7+git(gitee)简述实现步骤:在docker安装jenkins,配置jenkins基... 查看详情
jenkins容器自动化部署与持续集成(kubernetes)(代码片段)
本文是SpringCloud实战(九)-Docker自动化部署与持续集成,若要关注前文,请点击传送门: SpringCloud实战(八)-断路器监控与集群监控(HystrixDashboard) 前文我们介绍了Hy... 查看详情
自动化部署之gitlab+jenkins+docker
总结自动发布流程: Gitlab+Jenkins+Docker 查看详情
docker+jenkins+gitee+maven构建自动化部署(代码片段)
Jenkins的环境构建和项目自动化部署docker-compose部署配置jenkins步骤1:Docker下载jenkins镜像并运行容器步骤2:访问jenkins2.1.jekins访问:2.2.进入jenkins获取密码步骤3.选择jenkins安装推荐的插件步骤4.选择jenkins安装插件步骤5... 查看详情
docker+jenkins+gitee+maven构建自动化部署(代码片段)
Jenkins的环境构建和项目自动化部署docker-compose部署配置jenkins步骤1:Docker下载jenkins镜像并运行容器步骤2:访问jenkins2.1.jekins访问:2.2.进入jenkins获取密码步骤3.选择jenkins安装推荐的插件步骤4.选择jenkins安装插件步骤5... 查看详情
基于docker+jenkins实现自动化部署(代码片段)
Jenkins是一个基于java开发的开源 CI&CD软件,用于自动化各种任务,包括构建、测试和部署软件。jenkins官网:https://jenkins.iojenkins下载地址:https://jenkins.io/download/ 请检测是否安装docker,如果没有安装或想提速下载请走这... 查看详情
搭建jenkins,gitlab自动化打包部署项目(代码片段)
安装步骤:1.Docker-compose构建jenkins环境2.Docker-compose构建gitlab环境3.Jenkins,Gitlab自动化打包部署项目1.Docker-compose构建jenkins环境1、创建docker在主机的jenkins数据映射目录mkdir-p/data/jenkins_homechown-R777/data/jenkins_home2、用docker- 查看详情
搭建jenkins,gitlab自动化打包部署项目(代码片段)
...ompose构建jenkins环境2.Docker-compose构建gitlab环境3.Jenkins,Gitlab自动化打包部署项目1.Docker-compose构建jenkins环境1、创建docker在主机的jenkins数据映射目录mkdir-p/data/jenkins_homechown-R777/data/jenkins_home2、用docker-compose安装,创建一个docker-jen... 查看详情
基于docker+jenkins实现自动化部署(代码片段)
Jenkins是一个基于java开发的开源 CI&CD软件,用于自动化各种任务,包括构建、测试和部署软件。jenkins官网:https://jenkins.iojenkins下载地址:https://jenkins.io/download/ 请检测是否安装docker,如果没有安装或想提速下载请走这... 查看详情
我用docker部署jenkins(代码片段)
一键部署dockerrun--namejenkins-uroot-d-p8080:8080-p50000:50000-eTZ="Asia/Shanghai"-v/home/data/www/jenkins.wzlinux.com:/var/jenkins_home-v/var/run/docker.sock:/var/run/docker.sock--restart=on-failure:10je 查看详情
idea使用docker插件,实现一键自动化部署
一、docker开启远程连接访问首先我们要开启docker的远程连接访问。保证不是docker所在的服务器,也能够远程访问docker。Linux版的docker:修改docker.service文件,添加监听端口-Htcp://0.0.0.0:2375vi/usr/lib/systemd/system/docker.service找到ExecStar... 查看详情
idea使用docker插件,实现一键自动化部署
一、docker开启远程连接访问首先我们要开启docker的远程连接访问。保证不是docker所在的服务器,也能够远程访问docker。Linux版的docker:修改docker.service文件,添加监听端口-Htcp://0.0.0.0:2375vi/usr/lib/systemd/system/docker.service找到ExecStar... 查看详情
docker+harbor+jenkins+gitlab自动化cicd构建
文章大纲1.实现CICD的架构简介2.Gitlab部署和实践3.Docker部署4.Harbor私有仓库部署5.Jenkinspipeline项目持续集成实践6.整体架构参考文献1.实现CICD的架构简介本实践介绍了利用Jenkins和docker技术,如何实现CI/CD的各环节的步骤,包括代码... 查看详情
.netcore部署到linux(centos)最全解决方案,入魔篇(使用docker+jenkins实现持续集成自动化部署)(代码片段)
通过前面三篇:.NETCore部署到linux(CentOS)最全解决方案,常规篇.NETCore部署到linux(CentOS)最全解决方案,进阶篇(Supervisor+Nginx).NETCore部署到linux(CentOS)最全解决方案,高阶篇(Docker+Nginx或Jexus)通过前面三篇文章的介绍,我们已经对.netcore... 查看详情
jenkins+docker+gitlab自动化部署
流程:开发人员提交代码到Gitlab版本仓库;Jenkins触发项目构建;Jenkins拉取代码、代码编码、打包镜像、推送到镜像仓库;Jenkins在Docker主机创建容器并发布 角色IPJenkins/Docker192.168.125.224Docker192.168.125.227Gitlab/registry仓库192.1... 查看详情
gogs+jenkins+docker自动化部署.netcore(代码片段)
环境说明腾讯云轻量服务器,配置1c2g6mb,系统是ubuntu20.14,Docker和Jenkins都在这台服务器上面,群晖218+一台,Gogs在这台服务器上。Docker安装卸载旧的Dockersudoapt-getremovedockerdocker-enginedocker.iocontainerdrunc更新apt包索引并安装包以允许apt... 查看详情