我的编程空间,编程开发者的网络收藏夹
学习永远不晚

怎么用Jenkins+docker发布Springbot服务

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

怎么用Jenkins+docker发布Springbot服务

这篇文章主要介绍了怎么用Jenkins+docker发布Springbot服务的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇怎么用Jenkins+docker发布Springbot服务文章都会有所收获,下面我们一起来看看吧。

1.开发Springbot应用

新建多个环境的配置文件

怎么用Jenkins+docker发布Springbot服务

bootstrap.yaml

怎么用Jenkins+docker发布Springbot服务

 通过变量获取不同环境active 

bootstrap-dev.yml

怎么用Jenkins+docker发布Springbot服务

 bootstrap-pre.yaml

怎么用Jenkins+docker发布Springbot服务

预发布及生产环境配置文件走nacos

二.配置docker

新增Dockerfile文件

怎么用Jenkins+docker发布Springbot服务

Dockerfile内容

# Docker image for springboot file run# VERSION 0.0.1# Author: eangulee# 基础镜像使用javaFROM openjdk:8# 作者MAINTAINER qql <xxx@qq.com># VOLUME 指定了临时文件目录为/tmp。# 其效果是在主机 /var/lib/docker 目录下创建了一个临时文件,并链接到容器的/tmpVOLUME /tmp# 设置时区ENV TZ=Asia/ShanghaiRUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone# 将jar包添加到容器中并更名为app.jarARG JAR_FILEADD target/cdc-0.0.1-SNAPSHOT.jar /app.jar #替换成你项目打包后的文件名称#配置项目端口EXPOSE 8020# 运行jar包RUN bash -c 'touch /app.jar'ENTRYPOINT ["java","-jar","/app.jar","--spring.profiles.active=${env}"] #通过变量传递不同的环境

服务器项目下新增docker-composer.yaml文件 ,不要放在代码版本库

version: '3'services:  project-demo:    container_name: cdcd-demo #自定义容器名称    image: qql/cdcd:0.0.1 #镜像名称    restart: always    environment:      env: dev #环境,不同环境使用不同环境名称    volumes:      # 同步时间      - /etc/localtime:/etc/localtime:ro      # 如果项目有些日志或者写文件,需要同步到宿主机器,也需要定义相应的卷#      - ./data:/etc/project-demo/data#      - ./log:/etc/project-demo/log    ports:      - 8080:8020

三.配置Jenkins

怎么用Jenkins+docker发布Springbot服务

怎么用Jenkins+docker发布Springbot服务

怎么用Jenkins+docker发布Springbot服务

新增部署shell脚本

怎么用Jenkins+docker发布Springbot服务

#!/bin/bash echo "当前位置"pwd mvn clean package -Dmaven.test.skip=true#切换到项目目录cd cdcpwd#获取最新版本tagLatestTag=$(git describe --tags `git rev-list --tags --max-count=1`)echo -e "最新版本tag......"echo -e "$LatestTag"echo -e "镜像地址"  #获取本机IPlocal_ip=`ifconfig eth0 | grep 'inet' | awk '{print $2}' | sed -e "s/addr\://"`echo ${local_ip}#制作docker镜像docker build  -f Dockerfile -t qql/cdc:1.0 .echo "制作成功"cd ../dockerpwd#根据docker-composer.yaml文件新建获取重新构建docker容器docker-compose -f docker-composer.yaml -p cdc up -dstep=1 #间隔的秒数,不能大于60content="" for (( i = 0; i < 60; i=(i+step) )); dostatus_code=$(curl -I -m 10 -o /dev/null -s -w %{http_code}  127.0.0.1:8080/index/index) #访问服务一个接口验证容器是否启动echo $status_codeif [ $status_code != 200 ]; then  sleep $step  echo "服务还没有启动,耗时"$i"秒"else  echo "服务已经启动,耗时"$i"秒"  breakfi if [ $i == 59 ]; then  echo "启动失败"  exit -1fidone {  docker rmi `docker images | grep none | awk '{print $3}'` && / } || {  echo 'delete null images error(不需要处理)'}

保存,则就可以执行部署

怎么用Jenkins+docker发布Springbot服务

执行构建 

关于“怎么用Jenkins+docker发布Springbot服务”这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对“怎么用Jenkins+docker发布Springbot服务”知识都有一定的了解,大家如果还想学习更多知识,欢迎关注编程网行业资讯频道。

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

怎么用Jenkins+docker发布Springbot服务

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

怎么用Jenkins+docker发布Springbot服务

这篇文章主要介绍了怎么用Jenkins+docker发布Springbot服务的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇怎么用Jenkins+docker发布Springbot服务文章都会有所收获,下面我们
2023-07-05

Jenkins+docker发布Springbot服务的实现

本文主要介绍了Jenkins+docker发布Springbot服务的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
2023-03-09

docker发布服务无法访问怎么解决

有几种可能的原因导致无法访问Docker发布的服务:端口映射问题:确保在运行Docker容器时正确地映射了容器内部的端口到主机上的端口。例如,如果容器内部的应用程序监听在容器的8080端口上,则需要将主机上的端口与之绑定,例如使用`-p 8
2023-10-27

在云服务器上基于docker怎么安装jenkins

这篇文章主要介绍“在云服务器上基于docker怎么安装jenkins”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“在云服务器上基于docker怎么安装jenkins”文章能帮助大家解决问题。基于do
2023-07-02

Angular怎么编译打包并使用Docker发布

这篇文章给大家分享的是有关Angular怎么编译打包并使用Docker发布的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。环境:Angular CLI: 11.0.6Angular: 11.0.7Node: 12.
2023-06-15

阿里云发布加密服务器怎么用

简介阿里云作为全球领先的云计算服务提供商,一直致力于为用户提供安全可靠的云计算解决方案。其中,加密服务器是阿里云的一项重要服务,它可以提供数据传输和存储的安全保护。本文将介绍如何使用阿里云的加密服务器。使用步骤步骤一:购买加密服务器实例首先,您需要登录阿里云官网,选择适合您的加密服务器实例类型,并按照提示完成购买流程。
阿里云发布加密服务器怎么用
2024-01-18

c#项目怎么发布到服务器

今天小编给大家分享一下c#项目怎么发布到服务器的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。1.服务端需要把服务端的数据库资
2023-07-06

怎么使用云服务器发布自己写的网页

创建云服务器发布网页的步骤:创建云服务器,安装操作系统。安装Web服务器,配置虚拟主机和权限。上传网页文件,确保文件权限正确。配置域名,解析到服务器IP地址。配置安全措施,安装SSL证书、启用防火墙。测试网页,必要时调整,部署更改。
怎么使用云服务器发布自己写的网页
2024-04-10

怎么使用云服务器发布自己写的网页

要使用云服务器发布自己写的网页,您可以按照以下步骤进行操作:1. 选择云服务器提供商:首先选择一个适合自己需求的云服务器提供商。2. 购买云服务器:注册账号并购买一个云服务器实例。您可以根据自己的需求选择不同的实例类型、操作系统和配置。3.
2023-09-22

项目发布到云服务器怎么操作

在项目发布到云服务器之前,可以按照以下步骤操作:确定云服务器的可用性:确定云服务器的硬件和软件配置以及使用的软件包,包括操作系统、虚拟机、数据库和应用程序等,以确保云服务器的正常运行。配置服务器环境:根据需要选择适当的操作系统和软件环境,如Windows、Linux和Apache服务器等。此外,还需要安装必要的软件和工具,如网络配置和防火墙等。创建云存储:在云服务器上创建云存储或者将项目
2023-10-26

Docker compose搭建ELK服务怎么使用

今天小编给大家分享一下Docker compose搭建ELK服务怎么使用的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。概述使
2023-07-05

怎么使用docker-compose来部署服务

今天就跟大家聊聊有关怎么使用docker-compose来部署服务,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。使用docker-compose 大杀器来部署服务 先从 docker
2023-06-19

项目发布到云服务器怎么操作的

在项目发布到云服务器之前,我们需要确保项目的安全性和可靠性。以下是一些常见的步骤:选择云服务器提供商:首先,您可以选择提供云服务器租用或托管服务的云计算提供商。建议选择提供高可用性和可靠性解决方案的云计算提供商,以确保您的项目能够正常运行并且不中断。选择服务器配置:确定所需的服务器配置和容量,例如CPU、内存、存储等。配置虚拟机:选择一个虚拟机,并使用OpenStackDocker镜像来创建一个虚拟机来运行项目,并将其...
2023-10-27

Docker内的服务发现与负载均衡怎么配置

在Docker环境中,可以使用Docker Compose来配置服务发现和负载均衡。以下是一些常见的方法:使用Docker Compose中的网络功能:可以在Docker Compose文件中定义自己的网络,并将要部署的服务连接到该网络中。
Docker内的服务发现与负载均衡怎么配置
2024-05-07

怎么使用Docker Compose进行服务编排

这篇文章主要为大家展示了“怎么使用Docker Compose进行服务编排”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“怎么使用Docker Compose进行服务编排”这篇文章吧。一、什么是D
2023-06-04

Redis中的发布订阅和事务怎么使用

本篇内容主要讲解“Redis中的发布订阅和事务怎么使用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Redis中的发布订阅和事务怎么使用”吧!发布订阅redis的发布订阅系统有点类似于我们生活中
2023-06-19

项目发布到云服务器怎么操作的呢

首先,要将项目部署到云服务器上,需要考虑以下几个方面。首先,确定云服务器的可用性和性能,以确保项目能够稳定地运行。云服务器提供商通常会提供多种云服务,如AmazonWebServices、MicrosoftAzure、GoogleCloudPlatform等。用户可以根据自己的需求选择合适的云服务,并购买所需的许可证和
2023-10-27

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录