K8S 部署 SpringBoot 项目(一篇够用)

–vm-driver=docker

–base-image=“anjone/kicbase”

–image-repository=registry.cn-hangzhou.aliyuncs.com/google_containers

这里头我大概介绍一下启动参数的含义:

  • --registry-mirror 这里的地址会和启动的minikube内部的docker.daemon文件中所指向的镜像仓库地址一致。

  • --vm-driver 虚拟机引擎 这里是指minikube的内部通过docker来作为核心

  • --base-image 声明好基础镜像,如果宿主机内部有对应镜像,就不需要额外拉取

  • --image-repository 拉取镜像的仓库

当minikube启动成功之后,大致如下所示:

【idea @ Mac】>>>>>>minikube start --vm-driver=docker --base-image=“anjone/kicbase”

😄 Darwin 10.15.3 上的 minikube v1.16.0

✨ 根据现有的配置文件使用 docker 驱动程序

👍 Starting control plane node minikube in cluster minikube

🤷 docker “minikube” container is missing, will recreate.

🔥 Creating docker container (CPUs=2, Memory=1988MB) …

❗ This container is having trouble accessing https://k8s.gcr.io

💡 To pull new external images, you may need to configure a proxy: https://minikube.sigs.k8s.io/docs/reference/networking/proxy/

🐳 正在 Docker 19.03.2 中准备 Kubernetes v1.20.0…

▪ Generating certificates and keys …

▪ Booting up control plane …\

▪ Configuring RBAC rules …

🔎 Verifying Kubernetes components…

🌟 Enabled addons: default-storageclass

🏄 Done! kubectl is now configured to use “minikube” cluster and “default” namespace by default

【idea @ Mac】>>>>>>

好了,接下来便到了部署SpringBoot应用的部分了。

基于SpringBoot部署到k8s中


首先我们需要搭建一个简单的SpringBoot应用:

引入dependency依赖

org.springframework.boot

spring-boot-starter-web

打包docker镜像的配置:

打包出来的镜像名称

org.springframework.boot

spring-boot-maven-plugin

2.2.5.RELEASE

com.spotify

docker-maven-plugin

1.0.0

${project.artifactId}

1.0.1

src/main/docker

/

${project.build.directory}

${project.build.finalName}.jar

接着是简单的controller和启动类:

@RestController

@RequestMapping(value = “/test”)

public class TestController {

@GetMapping(value = “/do-test”)

public String doTest(){

System.out.println(“this is a test”);

return “success”;

}

}

@SpringBootApplication

public class WebApplication {

public static void main(String[] args) {

SpringApplication.run(WebApplication.class);

}

}

编写Dockerfile的脚本:

FROM openjdk:8-jdk-alpine

VOLUME /tmp

#将springboot-k8s-template.jar复制到容器内部 并且别名叫springboot-k8s-template-v1.jar

ADD springboot-k8s-template.jar springboot-k8s-template-v1.jar

#相当于在容器中用cmd命令执行jar包  指定外部配置文件

ENTRYPOINT [“java”,“-Djava.security.egd=

  • 5
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值