Kubernetes08:【多类型业务迁移】业务系统迁移Kubernetes:springboot的web服务迁移kubernetes

一、代码如下

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

二、把服务做到镜像中

0、主机打包测试运行下

我们到之前克隆好的项目目录下

在这里插入图片描述
执行打包命令

mvn package

在这里插入图片描述
在这里插入图片描述
使用jar命令看下

jar -tf springboot-web-demo-1.0-SNAPSHOT.jar

在这里插入图片描述
在这里插入图片描述
使用java -jar 运行一下

java -jar springboot-web-demo-1.0-SNAPSHOT.jar

在这里插入图片描述
在这里插入图片描述
访问测试

10.155.20.50:8080/hello?name=Michael

在这里插入图片描述

1、搞定基础镜像

我们这个服务也只用java的镜像就行了。
这个我们用之前推送到镜像仓库的镜像就行。

2、搞定服务运行的相关文件

就是我们打包的jar,也已经准备好了。

3、构建镜像

在这里插入图片描述

vi Dockerfile

内容如下:

FROM hub.mooc.com/kubernetes/openjdk:8-jre-alpine

COPY target/springboot-web-demo-1.0-SNAPSHOT.jar /springboot-web.jar

ENTRYPOINT ["java", "-jar", "/springboot-web.jar"]

在这里插入图片描述
本地测试一下,先构建镜像

docker build -t springboot-web:v1 .

在这里插入图片描述
同样,我们docker run一下。

docker run -it springboot-web:v1

在这里插入图片描述
在这里插入图片描述
将镜像推送到仓库里。

docker tag springboot-web:v1 hub.mooc.com/kubernetes/spring-web:v1
docker push hub.mooc.com/kubernetes/spring-web:v1

在这里插入图片描述

三、制作k8s服务并调度

注意,我们这个是个web项目,有ip、端口需要配置服务发现的策略。

1、确定服务发现策略

vi springboot-web.yaml

在这里插入图片描述
springboot-web.yaml的内容如下:

#deploy
apiVersion: apps/v1
kind: Deployment
metadata:
  name: springboot-web-demo
spec:
  selector:
    matchLabels:
      app: springboot-web-demo
  replicas: 1
  template:
    metadata:
      labels:
        app: springboot-web-demo
    spec:
      containers:
      - name: springboot-web-demo
        image: hub.mooc.com/kubernetes/springboot-web:v1
        ports:
        - containerPort: 8080
---
#service
apiVersion: v1
kind: Service
metadata:
  name: springboot-web-demo
spec:
  ports:
  - port: 80
    protocol: TCP
    targetPort: 8080
  selector:
    app: springboot-web-demo
  type: ClusterIP

---
#ingress
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: springboot-web-demo
spec:
  rules:
  - host: springboot.mooc.com
    http:
      paths:
      - path: /
        backend:
          serviceName: springboot-web-demo
          servicePort: 80

在这里插入图片描述
下面来apply一下

kubectl apply -f springboot-web.yaml

在这里插入图片描述
看下是否启动了起来

kubectl get pods

在这里插入图片描述
我们要先在本地绑定一个host
添加:

10.155.20.120 springboot.mooc.com

在这里插入图片描述
打开浏览器测试

springboot.imooc.com/hello?name=Michael

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_40612128/article/details/123579390
今日推荐