kubernetes发布springboot项目

 1、获取springboot资源包

开发人员代码运行本地没有问题

本地打包代码

以此执行clean、packages。

打包之后,在target目录下,找到对应的“helloworld-0.0.1-SNAPSHOT.jar”包。

继续测试jar包的可用性

由于生产环境的端口有冲突,现在将端口变更,重新修改下为8880.

[[email protected] springboot]# java -jar helloworld-0.0.1-SNAPSHOT.jar 运行项目

如下,测试正常,所运行的jar包无问题。

2、制作dockerfile镜像

编写dockerfile和准备文件

[[email protected] springboot]# docker build -t springb_hello:v1 .

[[email protected] springboot]# docker images |grep  spring

springb_hello         v1       1c43627e054c        57 seconds ago      603 MB

[[email protected] springboot]# docker run -itd -p 8999:8880 --name=test springb_hello:v1

59faa3b14f19292272909bd0a1c20649bbfbcd53a932d2662f5606ee909c7c33

[[email protected] springboot]# docker ps |grep springb_hello

59faa3b14f19    springb_hello:v1         "java -jar /data/s..."   22 seconds ago      Up 21 seconds       0.0.0.0:8999->8880/tcp   test

[[email protected] springboot]# curl 192.168.19.132:8999/name

观察服务, 宿主机可以查看到相关服务。

如上所示,dockfiles生成的镜像有效,可以推送到私有仓库。

[[email protected] springboot]# docker tag springb_hello:v1 192.168.19.132:5000/springb_hello:v1

[[email protected] springboot]# docker push 192.168.19.132:5000/springb_hello:v1

The push refers to a repository [192.168.19.132:5000/springb_hello]

37e0f579e75d: Pushed

fa883cef017d: Pushing [=============================>       ] 277.8 MB/384.5 MB

3、Kubernetes部署应用

Kubernetes部署deployment服务如下,

如下,测试正常。

自此,kubernetes服务部署成功,下面暴露服务给客户端访问。

[[email protected] springboot]# kubectl get pods -owide |grep springb

springb-1481755096-6gxhn   1/1     Running   0          3m     10.0.47.2   node1

[[email protected] springboot]# kubectl get svc springbservice

NAME         CLUSTER-IP       EXTERNAL-IP   PORT(S)          AGE

springbservice   10.254.142.108   <nodes>       8880:31473/TCP   3m

自此,完成了kubernetes部署springboot项目实例。

原文地址:https://www.cnblogs.com/sunnyyangwang/p/10986227.html

时间: 2024-08-13 09:13:59

kubernetes发布springboot项目的相关文章

MyEclipse发布Springboot项目到MyEclipse配置的Tomcat中

MyEclipse发布Springboot项目到MyEclipse配置的Tomcat中步骤一: 右键点击项目名,选择Build Path --> Configure Bulid Path... 步骤二: 找到MyEclipse -- > Deployment Assembly,点击Add... 步骤三: 选中 Java Build Path Entries,点击 Next > 步骤四: 选中 Maven Dependencies,点击 Finish 步骤五: 可以看到maven的包已经被

resin发布spring-boot项目报错“java.lang.NoSuchMethodError: org.jboss.logging.Logger.getMessageLogger”

说白了还是jar包冲突问题,直接说解决方式: 首先将resin/lib下的validation-api-1.0.0.GA.jar替换成项目中的包validation-api-2.0.1.Final.jar 再将resin/webapp-jars下的 hibernate-validator-4.3.0.Final.jar jboss-logging-3.1.0.CR2.jar替换为项目中的版本hibernate-validator-5.1.0.Final.jar jboss-logging-3.3

2017-09-26 发布 SpringBoot多模块项目实践(Multi-Module)

https://segmentfault.com/a/1190000011367492?utm_source=tag-newest 2017-09-26 发布 SpringBoot多模块项目实践(Multi-Module) 原文地址:https://www.cnblogs.com/javajetty/p/9955082.html

linux下springboot项目通过jetty发布war包应用

Linux下jetty发布jar包 1.通过官网下载jetty点击下载https://repo1.maven.org/maven2/org/eclipse/jetty/jetty-distribution/ 2.下载后解压,进入%JETTY_HOME%,编辑start.ini修改默认端口号. 3.将war包放入%JETTY_HOME%/webapps下 4.启动应用bin/jetty.sh start,停止应用bin/jetty.sh stop ,重启bin/jetty.sh restart _

我的第三个springboot项目,servlet实现一个转盘抽奖程序

继上面第二个springboot项目后,今晚应朋友需求帮忙写个抽奖程序,想着就用springboot+servlet去发布一个服务给前端直接调用或者后端直接调用. 下面来介绍一下: 1.不错,依然需要一个Application的启动springboot的入口 import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication;

linux服务器中Jenkins集成git、Gradle持续构建Springboot项目

Jenkins是用java编写的开源持续集成工具,目前被国内外各公司广泛使用.本章教大家如何在linux服务器中使用Jenkins自动发布一个可作为linux服务发布的Springboot项目. 自动构建需要经过如下步骤:从git仓库下载代码.使用Gradle进行构建.使用SSH推送到另一台linux服务器.项目作为linux服务启动.本章将逐条仔细讲解. 一.获得一台linux服务器 要在linux下搞持续构建,首先你得先有一台linux服务器,作为小白,手头的机器肯定都是windows的,搞

Springboot项目Jenkinsfile模板

Springboot项目Jenkinsfile模板 #!/usr/bin/groovy import groovy.json.* import hudson.model.* //@NonCPS //代码库信息 String srcUrl = "${env.srcUrl}" String srcType = "${env.srcType}" String tagName = "${env.tagName}" String branchName =

idea内springboot项目设置热部署

一.需求分析: 编写idea中编写项目时,经常性改某几行代码就需要重新启动项目,比较浪费时间,借助idea的热部署可以实现代码的热部署 二.实现经过 这边可以借助spring-boot-devtools模块进行配置,devtools会检测代码,并进行重新发布.devtools的实现原理是通过使用两个 ClassLoader,一个用来加载一些第三方的代码(如引入的一些jar包).另一个ClassCLoud会加载一些会更改的代码,可以称 为restart ClassLoader.在有代码进行更改的时

补习系列(1)-springboot项目基础搭建课

[TOC] 前言 springboot 最近火的不行,目前几乎已经是 spring 家族最耀眼的项目了.抛开微服务.技术社区这些推广因素不说,框架本身的确有非常多的优点.比如 更简化的配置,摒除了许多繁杂的xml配置(事实证明,越简单的东西越容易让人记住): 内置Servlet容器,不再依赖外部环境 大量的starter模块,随手拈来 支持热部署 作为一名老程序员来说,仍然需要保持一个积极学习的态度.哎,简单点说就是少点伤感,认清现实.你曾经引以为傲的某某EE 技术已经被颠覆了,赶紧换车道 ..