springboot docker jenkins 自动化部署并上传镜像
springboot docker jenkins 自动化部署并上传镜像
springboot + docker + jenkins自动化部署项目,jenkins、mysql、redis都是docker运行的,并且没有使用虚拟机,就在阿里云服务器(centos7)运行
1、前期准备工作不说了
2、在项目根目录下新建Dockerfile
Dockerfile文件内容为:
基础镜像
FROM openjdk:12
作者
MAINTAINER demo demo@qq.com
VOLUME /tmp
指定配置文件,以及jar包在服务器上的路径
ENTRYPOINT ["java","-Dspring.profiles.active=prod","-jar","/lcy/work/tools/tools.jar"]
暴露端口
EXPOSE 8092
3、在服务器找个目录新建一个.sh文件
!/bin/sh
echo '================开始构建镜像=============='
镜像名称
IMAGE_NAME='registry.cn-beijing.aliyuncs.com/???/tools'
打包后在jenkins的地址
SOURCE_PATH='/lcy/jenkins/workspace/tools'
Dockerfile执行jar包的地址
BASE_PATH='/lcy/work/tools'
echo IMAGE_NAME=$IMAGE_NAME
echo '================复制JAR包==================='
echo $SOURCE_PATH/target/tools-0.0.1-SNAPSHOT.jar
cp $SOURCE_PATH/target/tools-0.0.1-SNAPSHOT.jar $BASE_PATH/tools.jar
chmod -R 777 $BASE_PATH/tools.jar
echo '================复制完成===================='
echo '================当前docker版本=============='
docker -v
echo '================构建镜像开始================'
docker build -t $IMAGE_NAME -f $SOURCE_PATH/Dockerfile .
echo '================构建镜像结束================'
输入要推送镜像的地址,根据镜像仓库提示的地址复制
echo '================推送镜像开始================'
docker login --username=??? --password=??? registry-vpc.cn-beijing.aliyuncs.com
docker push $IMAGE_NAME
echo '================推送镜像结束================'
echo '================获取容器id=================='
CID=$(docker ps | grep "$IMAGE_NAME" | awk '{print $1}')
echo 容器id=$CID
echo '================获取镜像id=================='
IID=$(docker images | grep "$IMAGE_NAME" | awk '{print $3}')
echo 镜像id=$IID
if [ -n "$CID" ]; then
echo 存在$IMAGE_NAME容器,停止容器并删除 docker stop tools docker rm tools
else
echo 不存在$IMAGE_NAME容器,开始启动 docker run -p 8092:8092 -d --name tools -v $BASE_PATH:$BASE_PATH $IMAGE_NAME
fi
4、配置jenkins,执行新建的.sh文件(记得给好权限)其它的配置就不说了,比如github的配置
5、运行结果
本文由博客一文多发平台 OpenWrite 发布!
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
MrDoc 0.5.0 版本发布,优化 EPUB 导出,新增 PDF 导出,支持自定义思维导图
MrDoc是一款基于Python开发的在线文档系统,以Markdown作为文档编写语法,界面美观、功能强大、操作便捷,适合作为个人和小型团队的文档、笔记和知识管理工具。 在2020-05-03,MrDoc发布了0.5.0版本,此版本: 优化了文集的EPUB导出下载 新增了文集的PDF导出下载 支持思维导图自定义高度 新增文档编辑器的Markdown折叠功能 在文档页面新增了一个底部广告位 优化了文集名称的字符验证 同时正式取中文名:觅道文档 欢迎下载、更新体验、提Issue!
- 下一篇
阿里云服务器如何降级降配?
阿里云服务器如何降级降配? 阿里云服务器ecs降级降配,只有在续费的时候才能操作,就是说:只有阿里云服务器到期前1周左右操作降级才可行!具体操作方法如下: 1、先找到服务器续费按钮 进入会员号用户中心——>我的服务(此方法是服务器即将到期,就是急需续费的,5日内就会到期的才可以看到) 2、点击服务器“续费”按钮,出现续费确认页面,出现下图: 在了解阿里云服务器如何降级降配?选择一款合适自己的云服务器也变得非常重要。最近阿里推出一款服务器深受好评,阿里云爆款云服务器低至三折
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
-
Docker使用Oracle官方镜像安装(12C,18C,19C)
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- CentOS8编译安装MySQL8.0.19
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- MySQL8.0.19开启GTID主从同步CentOS8
- CentOS7,8上快速安装Gitea,搭建Git服务器
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
推荐阅读
最新文章
- CentOS7设置SWAP分区,小内存服务器的救世主
- 设置Eclipse缩进为4个空格,增强代码规范
- CentOS8安装MyCat,轻松搞定数据库的读写分离、垂直分库、水平分库
- CentOS7编译安装Gcc9.2.0,解决mysql等软件编译问题
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- CentOS6,CentOS7官方镜像安装Oracle11G
- Hadoop3单机部署,实现最简伪集群
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- CentOS7安装Docker,走上虚拟化容器引擎之路